『忘了再學』Shell基礎 — 3、echo命令的介紹與使用


在講Shell腳本之前,要先說一個我們之前學過的命令,echo命令。

echo命令是Linux中最基礎的命令,也是很常用的命令,特別是在寫Shell腳本的時候,可能會經常被用到,雖然echo命令非常基礎,但是功能還算豐富。

1、echo命令的作用

  • 用於打印輸出文本(字符串)。
  • 在腳本中echo命令常用於在顯示器上顯示一段文字,一般起到提示的作用。
  • 在Shell編程中,常常用echo命令,在終端下打印變量value的屬性或者屬性值。

2、echo命令的基本用法

(1)echo命令的格式

[root@localhost ~ ] # echo [選項] [輸 出內容]

選項:

  • -e:支持反斜線控制的字符轉換(具體看本文第3點)。
  • -n:取消輸出后行末的換行符號(就是內容輸出后不換行)。

(2)舉例

  • 輸出一個連續的字符串。
    [root@localhost ~]# echo 123456789
    123456789
    
  • 輸出一個帶有空格的字符串。
    需要給字符串加上雙引號。
    [root@localhost ~]# echo "666 888"
    666 888
    
  • -n選項演示。
    [root@localhost ~]# echo -n "666 888"
    666 888[root@localhost ~]#
    
    在腳本中偶爾會用到。

注意:

如果字符串的最后是!,這個!后一定要加上一個空格,不然會報錯。

如下圖:

image

3、echo命令的-e選項用法

echo命令中如果使用了-e選項,則可以支持使用控制字符。控制字符如下:

  • \\:輸出\本身。
  • \a:輸出警告音。
  • \b:退格鍵,也就是向左刪除鍵。
  • \c:取消輸出行末的換行符。和-n選項一致。
  • \e:ESCAPE鍵。
  • \f:換頁符。
  • \n:換行符。
  • \r:回車鍵。
  • \t:制表符,也就是Tab鍵。
  • \v:垂直制表符。
  • \0nnn:按照八進制ASCII碼表輸出字符。其中0為數字零,nnn是三位八進制數。
  • \xhh:按照十六進制ASCII碼表輸出字符。其中hh是兩位十六進制數。

(1)輸出\,同時會在系統音中輸出一聲提示音。

[root@localhost ~ ] # echo -e "\\ \a"
\

注意:

如果覺得系統提示音很煩,可以編輯/etc/inputrc文件。

執行命令[root@localhost ~ ] # vim /etc/inputrc

編輯內容:把第二行的注釋打開即可。

如下圖所示:

image

修改保存文件,執行reboot命令重啟系統即可。以后就不會在有系統提示音了。

(2)\b的用法,在b鍵左側有\b,所以輸出時只有ac

[root@localhost ~ ] # echo -e "ab\bc"
ac

(3)制表符\t和換行符\n的用法。

[root@localhost ~ ] # echo -e "a\tb\tc\nd\te\tf"
a  b  c
d  e  f

(4)演示八進制ASCII碼輸出字符。

[root@localhost ~ ] # echo -e "\0141\t\0142\t\0143\n\0144\t\0145\t\0146"
a  b  c
d  e  f

141是個八進制數,在ASCII碼中代表小寫的a,其他的以此類推。

(5)演示十六進制ASCII碼輸出字符。

[root@localhost ~ ] # echo -e "\x61\t\x62\t\x63\n\x64\t\x65\t\x66"
a  b  c
d  e  f

4、echo命令一些特殊用法

(1)輸出字符帶有字體顏色

執行命令如下:

[root@localhost ~] # echo -e "\e[1;31m abcd \e[0m"

這條命令會把abcd按照紅色輸出。解釋下這個命令:

  • \e[1是標准格式,代表顏色輸出開始,\e[0m代表顏色輸出結束。
  • 31m定義字體顏色是紅色。echo能夠識別的顏色如下:30m=黑色31m=紅色32m= 綠色33m=黃色34m= 藍色35m=洋紅36m=青色37m=白色

命令結果如下圖:

image

拓展,執行命令:

[root@localhost ~ ] echo -e "\e[1;31ma\e[0m""\e[1;33mb\e[0m""\e[1;34mc\e[0m""\e[1;36md\e[0m"

結果如下圖所示:

image

(2)輸出字符帶有背景顏色

執行命令如下:

[root@localhost ~] # echo -e "\e[1;42m abcd \e[0m"

這條命令會給abcd加入一個綠色的背景。echo命令可以使用的背景顏色如下:40m= 黑色41m=紅色42m=綠色43m=黃色44m=藍色45m=洋紅46m=青色47m=白色

命令結果如下圖:

image

拓展,執行命令:

[root@localhost ~ ] echo -e "\e[1;41ma\e[0m""\e[1;43mb\e[0m""\e[1;44mc\e[0m""\e[1;46md\e[0m"

命令結果如下圖:

image

注意:好像字符串不能同時添加字體顏色和背景顏色(我沒有試出來)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM