溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

shell中重定向、管道和echo 命令的示例分析

發(fā)布時(shí)間:2021-10-21 13:46:30 來(lái)源:億速云 閱讀:549 作者:小新 欄目:開發(fā)技術(shù)

小編給大家分享一下shell中重定向、管道和echo 命令的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

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)看看效果shell中重定向、管道和echo 命令的示例分析

        我們看到在第一個(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]",效果如下圖所示

shell中重定向、管道和echo 命令的示例分析

        下來(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)看看效果

shell中重定向、管道和echo 命令的示例分析

        我們先來(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é)果

shell中重定向、管道和echo 命令的示例分析

        已經(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)看看效果

shell中重定向、管道和echo 命令的示例分析

        我們看到密碼已經(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)看看效果

shell中重定向、管道和echo 命令的示例分析

        那么我們肯定不希望在輸入密碼的時(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)看看效果

shell中重定向、管道和echo 命令的示例分析

        我們看到在輸入密碼時(shí)其背景為黑色,密碼還是加密的。此時(shí)我們已經(jīng)學(xué)習(xí)了 shell 中的管道和 echo 命令,在以后的開發(fā)中會(huì)更加的方便。

以上是“shell中重定向、管道和echo 命令的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI