在shell腳本編寫過程當中,咱們有足夠理由相信使用echo等打印輸出命令的頻率是至關高的。那下面咱們來看看都有哪些打印輸出命令以及它們的用法。php
echo命令:shell
功能說明:默認打印輸出到標準輸出(屏幕) 輸出的字符串以空白字符隔開 並在最後自動加上換行符 語 法:echo [-ne][字符串] /echo [--help][--version] 參 數: -n: 取消自動換行功能 -e: 打開反斜槓|[ESC]鍵轉義功能。字符串中出現如下字符,會特別處理, 不會當成通常字符輸出。 \a 發出警告聲 \b 刪除前一個字符 \c 刪除最後的字符及最後的換行 \e 刪除最後的字符 \E 同\e \f 換行但光標仍停留在原來的位置 \n 換行且光標移至行首 \r 光標移至行首,但不換行 \t 插入tab \v 與\f同 \\ 插入\字符 \nnn 插入nnn(八進制)所表明的ASCII字符 -E: 取消反斜槓|[ESC]鍵轉義功能(默認) --help:顯示幫助信息 --version:顯示版本信息 特殊使用:格式化文本(包含文件顏色和樣式等) 例如: echo -e "\033[44;37;5m My\033[0m Color" 註釋: \033 爲[ESC]鍵的ASCII碼 表示終端轉義字符開始 [44;37;5m 分別表明背景色 前景色 光標閃爍 0m 表示恢復到終端默認設置 m 表示設置屬性並結束很是規字符序列 注意:輸出文本顏色 必須使用-e選項 可選擇的顏色/動做編碼以下: 編碼 顏色/動做 0 恢復到默認設置 1 設置粗體 2 設置一半亮度 4 設置下劃線 5 設置閃爍 7 設置反向圖像 22 設置通常密度 24 關閉下劃線 25 關閉閃爍 27 關閉反向圖像 30 設置黑色前景 31 設置紅色前景 32 設置綠色前景 33 設置***前景 34 設置藍色前景 35 設置紫色前景 36 設置青色前景 37 設置白色(灰色)前景 38 在缺省的前景色上設置下劃線 39 在缺省的前景色上關閉下劃線 40 設置黑色背景 41 設置紅色背景 42 設置綠色背景 43 設置***背景 44 設置藍色背景 45 設置紫色背景 46 設置青色背景 47 設置白色(灰色)背景 49 設置缺省黑色背景 其餘編碼: \033[2J 清除屏幕 \033[0q 關閉全部鍵盤指示燈 \033[1q 設置"滾動鎖定"指示燈(Scroll Lock) \033[2q 設置"數值鎖定"指示燈(Num Lock) \033[3q 設置"大寫鎖定"指示燈(Caps Lock) \033[15:40H 關閉移動到第15行,40列 \033[60G 光標移動到第60列 \077 發蜂鳴聲beep 使用實例: 1,模擬Linux服務啓動的輸出信息 #!/bin/bash # Green="\033[32m" Normal="\033[0m" Jump="\033[60G" Service=`basename $0` if [[ $1 == start ]];then echo -e "Strating $Service: $Jump[ ${Green}OK${Normal} ]" elif [[ $1 == stop ]];then echo -e "Stopping $Service: $Jump[ ${Green}OK${Normal} ]" else echo "Usage: ./$Service {start|stop}" fi
執行結果:bash
2,彩色進度條: #!/bin/bash # echo -e "\033[32m" b=`echo -e "\033[42;32m[]\033[0m "` echo Installing........ echo -------------------------------------------------------------- for ((i=0;$i<=60;i+=2)) do printf $b sleep 0.1 b=`echo -e "\033[42;32m[]\033[0m "`$b done echo -e "\033[32m" echo -------------------------------------------------------------- echo "Complete!" echo -e "\033[0m"
執行結果:ide
Printf命令:編碼
功能描敘:一個更強大,更靈活的打印命令。 printf和C語言的使用方式相似。 和echo不同的是,它不會在最後自動加上換行符。 須要手工使用\n來指定換行。 語 法: printf format-string [arguments] 格式參數: %c: ASCII字符,若是參數給出字符串,則打印第一個字符 %d: 十進制整數 %i: 同%d %e: 浮點格式 ([-]d.精度[+-]dd) %E: 浮點格式 ([-d].精度E[+-]dd) %f: 浮點格式 ([-]ddd.precision) %g: %e或者%f的轉換,若是後尾爲0,則刪除它們 %G: %E或者%f的轉換,若是後尾爲0,則刪除它們 %o: 八進制 %s: 字符串 %u: 非零正整數 %x: 十六進制 %X: 非零正數,16進制,使用A-F表示10-15 %%: 表示字符"%" 注 意: 若是給出的格式參數的個數超過給出的參數的個數, 那麼超出的部分爲0或者null