引數傳遞是乙個很好的功能,在其他指令碼語言中我使用很頻繁。主要的作用可以讓指令碼得以復用。簡單看一下bash中的引數傳遞:
如同perl中的$argv[x],bash中使用更簡單的$n。其中$1-$9代表前9個引數,而$0是檔名稱。說起來,這個應該更像python或者c語言。
簡單測試:
執行結果:
改一下引數:
有意思的現象出現了:超過9,不準確!
對**的其他解釋:
$#,代表引數個數
$0,檔名稱
$*,全部引數
$@,全部引數
其實,最後兩個全部引數是有差異的。但是目前我掌握的簡單技能還不能夠通過**對這個進行乙個準確的描述,作為後面我自己學習的乙個問題點記錄吧!
再補充一下:如果引數少於**中的接收引數的變數時,剩下的接收變數全都賦值為空。
Shell指令碼的引數傳遞
在許多的情況下,shell指令碼都需要接受使用者的輸入,根據使用者的輸入引數來執行不同的操作。本節內容主要介紹shell指令碼的引數,以及如何在指令碼中接收引數。從命令列傳遞給shell指令碼的引數又稱為位置引數,這主要是因為shell指令碼會根據引數的位置來接受它們的資料。在shell指令碼的內部...
向指令碼傳遞引數
start 在需要的時候我們可以向 perl 指令碼傳遞引數,perl 會自動將所有的引數放到陣列 argv 中,下面是乙個簡單的例子。usr bin perl use strict if argv 1 my name argv print welcome name n unix 的 cat 命令可...
向指令碼傳遞引數
1.使用 pg opt.sh bin sh opt.sh usage opt 1 processid 1 if ne 2 then usage exit 1 ficase opt in start start echo starting.processid stop stop echo stoppi...