2011-07-07 110 views
1

我有一個Bash腳本,我發送了10個參數。Bash腳本的參數過多?

我試圖進入第十個參數,如echo $10

相反,我得到標有零的第一個參數。

我如何能進入第十個參數有什麼想法?

+0

一般來說,如果你想有更多然後2-3個觀點是很好用的,而不是用一些固定的參數位置,使你的代碼更易讀標誌選項,並只記住的標誌,而不是精確位置(如./script - 從xxx到yyy -num zzz ...)。這裏有一些現成的開源庫。他們中的大多數使用bash「shift」命令遍歷它們,所以即使它們有幾十個參數,它們通常也不會超過3美元。 – XzKto

回答

10

使用${10},而不是$10。你可以用這個看起來任意數量的參數。我已經成功測試了它${100}

+1

試試這個測試:'bash -c「echo \ $ {7854}」$(seq 10 10000)'。 – Lynch

+2

不要去尋找極限:你是忙碌的很長一段時間(http://stackoverflow.com/questions/4185017/maximum-number-of-bash-arguments-max-num-cp-arguments ) – sehe