shell學習筆記(3)
阿新 • • 發佈:2020-08-03
echo 是一個Shell 內建命令,用來在終端輸出字串,並在最後預設加上換行符。
#!/bin/bash name="Shell教程" url="http://c.biancheng.net/shell/" echo "讀者,你好!" #直接輸出字串 echo $url #輸出變數 echo "${name}的網址是:${url}" #雙引號包圍的字串中可以解析變數 echo '${name}的網址是:${url}' #單引號包圍的字串中不能解析變數
不換行
echo 命令輸出結束後預設會換行,如果不希望換行,可以加上-n
引數
#!/bin/bash name="Tom" age=20 height=175 weight=62 echo -n "${name} is ${age} years old, " echo -n "${height}cm in height " echo "and ${weight}kg in weight." echo "Thank you!"
執行結果:
Tom is 20 years old, 175cm in height and 62kg in weight. Thank you!
輸出轉義字元
預設情況下,echo 不會解析以反斜槓\
開頭的轉義字元。比如,\n
表示換行,echo 預設會將它作為普通字元對待。請看下面的例子:
[root@localhost ~]# echo"hello \nworld" hello \nworld
我們可以新增-e
引數來讓 echo 命令解析轉義字元。例如:
[root@localhost ~]# echo -e "hello \nworld" hello world
\c 轉義字元
有了-e
引數,我們也可以使用轉義字元\c
來強制 echo 命令不換行了。請看下面的例子:
#!/bin/bash name="Tom" age=20 height=175 weight=62 echo -e "${name} is ${age} years old, \c" echo -e "${height}cm in height \c" echo"and ${weight}kg in weight." echo "Thank you!"
執行結果:
Tom is 20 years old, 175cm in height and 62kg in weight. Thank you!
shell ehco 中的轉義字元
轉義字元 | 含義 |
---|---|
\a | 發出警告音 |
\b | 退格 |
\c | 忽略之後的字元,包括換行 |
\f | 清屏 |
\r | 回車 |
\t | 水平製表符 |
\v | 垂直製表符 |
\\ | 反斜線 |
\0ddd | 八進位制ascii |
‘!’ :在echo輸出中有特殊含義的
shell指令碼中echo顯示內容帶顏色顯示,echo顯示帶顏色,需要使用引數-e (注意:BASH中適用,切換:在命令列輸入bash)
格式如下:
echo -e "\033[字背景顏色;文字顏色m 字串\033[0m"
例如
echo -e "\033[41;36m something here \033[0m"
其中41的位置代表底色, 36的位置是代表字的顏色
注:
1、字背景顏色和文字顏色之間是英文的""
2、文字顏色後面有個m
3、字串前後可以沒有空格,如果有的話,輸出也是同樣有空格
下面是相應的字和背景顏色,可以自己來嘗試找出不同顏色搭配
echo -e “\033[31m 紅色字 \033[0m” echo -e “\033[34m 黃色字 \033[0m” echo -e “\033[41;33m 紅底黃字 \033[0m” echo -e “\033[41;37m 紅底白字 \033[0m”
字顏色:30—–37
echo -e “\033[30m 黑色字 \033[0m” echo -e “\033[31m 紅色字 \033[0m” echo -e “\033[32m 綠色字 \033[0m” echo -e “\033[33m 黃色字 \033[0m” echo -e “\033[34m 藍色字 \033[0m” echo -e “\033[35m 紫色字 \033[0m” echo -e “\033[36m 天藍字 \033[0m” echo -e “\033[37m 白色字 \033[0m”
echo -e "\033[41;36m something here \033[0m"
字背景顏色範圍:40—–47‘
echo -e “\033[40;37m 黑底白字 \033[0m” echo -e “\033[41;37m 紅底白字 \033[0m” echo -e “\033[42;37m 綠底白字 \033[0m” echo -e “\033[43;37m 黃底白字 \033[0m” echo -e “\033[44;37m 藍底白字 \033[0m” echo -e “\033[45;37m 紫底白字 \033[0m” echo -e “\033[46;37m 天藍底白字 \033[0m” echo -e “\033[47;30m 白底黑字 \033[0m”
最後面控制選項說明
\33[0m 關閉所有屬性 \33[1m 設定高亮度 \33[4m 下劃線 \33[5m 閃爍 \33[7m 反顯 \33[8m 消隱 \33[30m — \33[37m 設定前景色 \33[40m — \33[47m 設定背景色 \33[nA 游標上移n行 \33[nB 游標下移n行 \33[nC 游標右移n行 \33[nD 游標左移n行 \33[y;xH設定游標位置 \33[2J 清屏 \33[K 清除從游標到行尾的內容 \33[s 儲存游標位置 \33[u 恢復游標位置 \33[?25l 隱藏游標 \33[?25h 顯示游標