Linux Shell指令碼攻略學習總結:一 終端列印終端列印的常用命令有兩個:echo和print首先,我先介紹echo1.echoecho這個命令接受三種形式的參數,執行個體如下:[python] echo "Hello World" echo 'Hello World' echo Hello World 這三中形式的命令輸出的都是同樣的結果,但是,每種方法都有它相應的“副作用”例如如下的結果: 從結果中我們可以看出,以雙引號為參數的命令並不能識別標點符號,此時,如果仍使用雙引號我們可以加上逸出字元,並使用 -e 參數例如:[python] echo -e "Hello World \!" 2.print這個命令需要我們聯想C語言中的printf函數,因為它使用的方法和作用是一樣的,我們看一個執行個體[python] #!/bin/bash #Filename: printf.sh printf "%-5s %-10s %-4s\n" No Name Mark printf "%-5s %-10s %-4.2f\n" 1 Sarath 80.3456 printf "%-5s %-10s %-4.2f\n" 2 James 90.9989 printf "%-5s %-10s %-4.2f\n" 3 Jeff 77.564 運行這個執行個體,我們得到如下的結果 玩轉變數Shell中的變數有如下特點:1.使用變數並不用聲明2.任何變數的定義方法都是 var=value 註:等號兩邊不允許有空格3.任何變數的值都是一個字串 我們來看一個執行個體:[python] #!/bin/bash #Filename : variables.sh fruit=apple count=5 echo "We have $count $fruit(s)" 輸出結果如下: 附:我們可以通過相應的方法擷取變數值的長度:[python] <span style="font-size:18px;"><strong>length=${#var}</strong></span> 例如: 欄位分隔符號IFS(內部欄位分隔符號)是Shell指令碼中的一個重要概念。在處理文本資料時,相當有用。內部欄位分隔符號是用於特定用途的定界符。IFS是儲存定界符的環境變數。它是當前shell環境使用的預設定界字串。執行個體如下:[python] #!/bin/bash #passwd_line.sh #Description: Illustration of IFS line="root:x:0:0:root:/root:/bin/bash" oldIFS=$IFS; IFS=":" count=0; for item in $line; do [ $count -eq 0 ] && user=$item; [ $count -eq 6 ] && shell=$item; let count++ done; IFS=$oldIFS echo $user\'s shell is $shell; 運行結果如下: