2013-06-27 111 views
0

我測試getopt爲我的伯恩腳本,我發現一些非常有趣的結果。命令行參數與getopt無法正常工作

如果我做到以下幾點:

./myscript -z blah -o legal -p another_legal 

正如預期的那樣,我會得到:

getopt: illegal option -- z 
getopt: illegal option -- 
getopt: illegal option -- b 
getopt: illegal option -- l 
getopt: illegal option -- a 
getopt: illegal option -- h 

但是,如果我這樣做:

./myscript -o legal -p another_legal -z blah 

getopt不趕這個。任何想法爲什麼?

回答

3

"$*"將您函數收到的所有參數作爲單個參數傳遞給getopt。所以你基本上是在運行getopt lLo:p:t: "-o legal -p another..."你想要"[email protected]"

+0

就是這樣,謝謝! –