在許多的情況下,shell指令碼都需要接受使用者的輸入,根據使用者的輸入引數來執行不同的操作。本節內容主要介紹shell指令碼的引數,以及如何在指令碼中接收引數。從命令列傳遞給shell指令碼的引數又稱為位置引數,這主要是因為shell指令碼會根據引數的位置來接受它們的資料。在shell指令碼的內部,使用者可以通過一系列的系統變數來獲取引數。這些變數的名字都是固定的,並且簡單。下面列出了常用的與引數傳遞有關的系統變數。
變數名說明
$n表示傳遞給指令碼的第n個引數
$#命令列引數的個數
$0當前指令碼的名稱
$*以」引數1 引數2 引數3 …..」的形式返回所有的資料
$@以」引數1」 「引數2」「引數3」 …..」的形式返回所有的資料
$?儲存程式最後一條命令的退出狀態
注意:對於包含空白字元或者其他的特殊字元的引數,需要使用單引號或者雙引號進行傳遞。
#! /bin/bash
echo
" $# parameters "
echo
' $@ is'
"$@ "
echo
' $* is'
"$* "
echo
' parameters $0 is '
"$0"
echo
' parameters $1 is '
"$1"
echo
' parameters $2 is '
"$2"
3 parameters
$@ is a b c
$* is a b c
parameters $0
is2.sh
parameters $1
is a
parameters $2
is b
[root@*
**]# echo $?
0
shell指令碼 函式傳遞引數
在乙個指令碼中,多個函式之間可能需要相互傳遞引數,之前一直對引數的傳遞以及引用有些疑問,今天做了幾個小測試例子 1 bin bash function f1 function f2 f1 1執行結果 temp2.sh pp mj ubuntu temp2.sh pp f1pp f2pp2 bin b...
shell指令碼read傳遞引數
1.用read獲取使用者的輸入 舉例 example.sh,檢視 cat example.sh bin bash this is a sample script file.accept user input for demonstration.使用read命令將使用者的輸入儲存到變數name中 ec...
Shell指令碼程式設計之Shell傳遞引數
1.我們可在執行指令碼的時候向指令碼傳遞引數,指令碼內獲取引數的格式為 n,n代表乙個數字,1為執行指令碼的第乙個引數,2為執行指令碼的第二個引數,以此類推 授權後執行,結果如下 2.處理引數的方法 傳遞到指令碼的引數個數 以乙個單字串顯示所有向指令碼傳遞的引數 指令碼執行的當前程序id號 後台執行...