一 指令介紹
1.1 功能
列印輸出内容(printf複雜的輸出),單行文本的覆寫,會清空原來内容。
1.2 文法
echo [選項] [參數]
選項
- -e:啟用轉義字元。
- -E: 不啟用轉義字元(預設)。
- -n: 結尾不換行。
參數
- 變量:指定要列印的變量。
1.3 擴充
- 輸出重定向:>或1>,把前面輸出的東西輸入到後邊的檔案中,會删除檔案原有内容。
- 追加重定向:>>或1>>,把前面輸出的東西追加到後邊的檔案中,不會删除檔案原有内容。
- 輸入重定向:<或<0,輸入重定向用于改變指令的輸入,指定輸入内容,後跟檔案名。
- 錯誤重定向:把錯誤資訊輸入到後邊的檔案中,會删除檔案原有内容。
- 錯誤追加重定向:把錯誤資訊追加到後邊的檔案中,不會删除檔案原有内容。
- 标準輸入(stdin):代碼為0,使用<或<<
- 标準輸出(stdout):代碼為1,使用>或>>
- 标準錯誤輸出(stderr):代碼為2,使用2>或2>>
- 2>&1:就是把标準錯誤重定向到标準輸出,也可以用>&
二 使用場景
2.1 案例1
輸出阿拉伯數字1-10
echo {1..10}
輸出英文字母a-z
echo {a..z}
輸出"你好世界"
echo "Hello World."
2.2 案例2
追加重定向,隻追加到結尾
echo "I am learning Linux." >>test.txt
echo "I am learning Linux." >>test.txt
cat test.txt
2.3 案例3
輸出重定向,會删除檔案原有内容
echo "I am learning Linux." >test.txt
cat test.txt
2.4 文字顔色擴充
echo -e "\x1b[30;1m 0 黑色 \x1b[0m"\
"\x1b[31;1m 1 紅色 \x1b[0m"\
"\x1b[32;1m 2 綠色 \x1b[0m"\
"\x1b[33;1m 3 黃色 \x1b[0m"\
"\x1b[34;1m 4 藍色 \x1b[0m"\
"\x1b[35;1m 5 洋紅 \x1b[0m"\
"\x1b[36;1m 6 青色 \x1b[0m"\
"\x1b[37;1m 7 白色 \x1b[0m"
2.5 背景顔色
echo -e "\e[1;42mGreed Background\e[0m"
2.6 文字閃動
echo -e "\033[37;31;5mI am learning Linux...\033[39;49;0m"
紅色數字處還有其他數字參數:
- 0 關閉所有屬性
- 1 設定高亮度(加粗)
- 4 下劃線
- 5 閃爍
- 7 反顯
- 8 消隐
至此,echo指令梳理完成。