您好,登錄后才能下訂單哦!
小編給大家分享一下shell中重定向、管道和echo 命令的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
shell 中的重定向、管道和 echo 命令
我們看到第一次查找的時(shí)候只有 grep mysql 進(jìn)程存在,在第二次查找的時(shí)候一個(gè)也沒(méi)有。grep -v grep 便是將我們進(jìn)行查找的進(jìn)程刪除掉
下來(lái)我們來(lái)講講 echo 命令。眾所周知,echo 是用來(lái)打印的??墒撬囊恍└呒?jí)操作,你知道嗎?接下來(lái)我們就來(lái)講講這個(gè)神秘的 echo。
格式:echo [選項(xiàng)][字符,變量....]
選項(xiàng): -n 不換行輸出,echo 默認(rèn)是輸出一次換一行; -e 增強(qiáng),啟用轉(zhuǎn)移字符解析:\a 響鈴、 \b 退格、 \c 去除尾部的新行、 \n 新的一行、 \r 回車、 \t 水平制表符、 \\ 斜杠、 \0NN 八進(jìn)制、 \0xHH 十六進(jìn)制輸出。
舉例:echo -e "welcom to \t new world \n shell \\ programming",我們來(lái)看看效果
我們看到在第一個(gè) \t 的時(shí)候出現(xiàn)了指標(biāo)符,在 \n 的時(shí)候出現(xiàn)了換行符,\\ 是斜杠。
下來(lái)看看怎么輸出有顏色的字符。前景色:十位數(shù)的 3 表示,范圍:30-37(3x 表示);背景色:十位數(shù)的 4 表示,范圍:40-47(4x 表示);個(gè)位數(shù)表示色彩:30(黑色)、31(紅色)、32(綠色)、33(×××)、34(藍(lán)色)、35(洋紅)、36(青色)、37(白色)。
舉例:echo -e "Network restarting... [\033[32;40m OK \033[0m]",效果如下圖所示
下來(lái)我們來(lái)看看一個(gè) echo 的實(shí)際應(yīng)用。寫一個(gè)腳本:提示用戶輸入一個(gè)密碼,并把密碼進(jìn)行 base64 或 md5 加密,然后將加密后的密碼保存到 /home/aston/test/a.txt 文件中。
步驟:1、提示輸入密碼;2、讀取密碼;3、對(duì)密碼進(jìn)行加密;4、重定向輸入到文件;5、查看密碼。
1、提示輸入密碼
#!/bin/bash echo "Please input a password:"
我們來(lái)看看效果
我們先來(lái)改變它的可執(zhí)行權(quán)限,再來(lái)執(zhí)行。已經(jīng)實(shí)現(xiàn)了上面的第一步。
2、讀取密碼
#!/bin/bash echo "Please input a password:" read PASS echo "your passwd is: $PASS"
我們來(lái)看看結(jié)果
已經(jīng)實(shí)現(xiàn)了讀取密碼的功能。
3、對(duì)密碼進(jìn)行加密
#!/bin/bash echo "Please input a password:" read PASS PASS=$(echo $PASS | openssl base64) echo "your passwd is: $PASS"
我們來(lái)看看效果
我們看到密碼已經(jīng)實(shí)現(xiàn)加密了。
4、重定向輸入到文件;5、查看密碼。
#!/bin/bash echo "Please input a password:" read PASS echo $PASS | openssl base64 > /home/aston/test/a.txt
我們來(lái)看看效果
那么我們肯定不希望在輸入密碼的時(shí)候被別人看到,所以我們得做個(gè)處理
!/bin/bash echo "Please input a password:" echo -n -e "\033[30;40m" read PASS echo -e "\033[0m" echo $PASS | openssl base64 > /home/aston/test/a.txt
我們將其背景色設(shè)置為黑色,來(lái)看看效果
我們看到在輸入密碼時(shí)其背景為黑色,密碼還是加密的。此時(shí)我們已經(jīng)學(xué)習(xí)了 shell 中的管道和 echo 命令,在以后的開發(fā)中會(huì)更加的方便。
以上是“shell中重定向、管道和echo 命令的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。