- 论坛徽章:
- 0
|
回复 #4 waker 的帖子
- 函数同样可以接受参数,存放第一个参数,存放第二个参数,$*存放输入参数的列表,
-
- Bash shell 提供位置參數來擔任參數的傳遞工作。
-
- 例:sample2.sh p1 p2 p3 p4 p5 p6 p7 p8 p9
-
- 其中 p1 p2 p3 p4 p5 p6 p7 p8 p9 為欲傳入 sample2.sh 這支 shell的 9 個參數,此時,用 來代表 script 本身的檔案名稱, 代表第一個參數,也就是 p1, 代表第一個參數,也就是 p2,其它依此類推。
-
- $# 代表參數的總數,也就是 9。
- 代表這個程序的名稱,在這里就是 ”sample2.sh”
- $* 代表所有的參數,也就是 " p1 p2 p3 p4 p5 p6 p7 p8 p9"
- $@ 代表所有的參數,也就是 "p1" "p2" "p3" "p4" "p5" "p6" "p7" "p8" "p9"
- $* 和 $@ 的區別為:"$*" 代表 " p1 p2 p3 p4 p5 p6 p7 p8 p9",是將所有的參數作為一個整體字串來處理,而"$@" 代表 "p1" "p2" "p3" "p4" "p5" "p6" "p7" "p8" "p9",所有的參數還是分開的.
- shift 用來移動參數的位置,每執行一次,則所有的參數往左移一位,
- 使用set可用來重新設定位置參數,比如:set a b c d,表示重新設定 為 a, 為 b, 為 c, 為 d
复制代码
以上说明引自http://cache.baidu.com/c?m=9f65c ... 2752&user=baidu
不知对不对。 |
|