我們可以在執行 shell 指令碼時,向指令碼傳遞引數,指令碼內獲取引數的格式為:$n。n代表乙個數字,1 為執行指令碼的第乙個引數,2 為執行指令碼的第二個引數,以此類推……
以下例項我們向指令碼傳遞三個引數,並分別輸出,其中$0為執行的檔名:
為指令碼設定可執行許可權,並執行指令碼,輸出結果如下所示:
#!/bin/bash另外,還有幾個特殊字元用來處理引數:echo
"第乙個引數是$
"echo
"第二個引數是$
"
引數處理
說明$#
傳遞到指令碼的引數個數
$*以乙個單字串顯示所有向指令碼傳遞的引數。
如"$*"用「"」括起來的情況、以"$1 $2 … $n"的形式輸出所有引數。
$$指令碼執行的當前程序id號
$!後台執行的最後乙個程序的id號
$@與$*相同,但是使用時加引號,並在引號中返回每個引數。
如"$@"用「"」括起來的情況、以"$1" "$2" … "$n" 的形式輸出所有引數。
$-顯示shell使用的當前選項,與set命令功能相同。
$?顯示最後命令的退出狀態。0表示沒有錯誤,其他任何值表明有錯誤。
#!/bin/bash執行指令碼,輸出結果如下所示:echo
"第乙個引數是$
"echo
"第二個引數是$
"echo
"合併輸出$*
"echo
"全部輸出$@
"echo
"引數的個數是$#
"
$* 與 $@ 區別:
linux shell 引數傳遞
在shell程式設計時.可以使用引數。shell有位置引數和內部引數 1.位置引數 由系統提供的引數稱為位置引數。位置引數的值可以用 n得到,n是乙個數字,如果為1,即 1.類似c語言中的陣列,linux會把輸入的命令字串分段並給每段進行標號,標號從0開始。第0號為程式名字,從1開始就表示傳遞給程式...
linux shell 判斷引數
shell 程式設計中使用到得if語句內判斷引數 b 當file存在並且是塊檔案時返回真 c 當file存在並且是字元檔案時返回真 d 當pathname存在並且是乙個目錄時返回真 e 當pathname指定的檔案或目錄存在時返回真 f 當file存在並且是正規檔案時返回真 g 當由pathname...
Linux shell 引數展開
reminder time to go to the dentist 將值儲存在reminder中 sleep 120 等待兩分鐘 echo reminder 顯示資訊 替換運算子 運算子 替換 如果varname存在且非null,返回其值 否則,返回word。用途 如果變數未定義,則返回預設值。範...