我將參數從Java程序傳遞到shell腳本,我在shell腳本中使用環境變量來接收參數。通過使用$ 9,我可以獲得參數,直到9。但是,如果我獲得第10個參數,則會出現錯誤。我使用$ {10}來獲取第10個參數的輸入。我在哪裏錯了。表示環境變量10
表示環境變量10
回答
我不確定${10}
的格式,雖然它看起來很明智。但是,您可以使用shift
內置函數重用$1
。像這樣的東西。
#!/bin/sh
a=$1
shift
b=$1
echo "$a:$b"
你可以像這樣運行它。
[email protected]arium% ~/foo.sh Hello Goodbye
Hello:Goodbye
謝謝你的答覆。但我傳遞了大約15個參數給shell,所以$ 1可能代表我發送儀式的第一個參數 – NandaKumar 2012-07-24 09:19:12
是的,但順序是相關的不是嗎?因此,您可以放置一個塊,獲取該值,然後在處理開始之前對所有15個值重複進行移位。 – 2012-07-24 11:00:47
如果你有不平凡的參數傳遞,你應該使用'getopts'。 – 2012-07-24 11:01:22
- 1. 顯示環境變量LD_LIBRARY_PATH
- 2. 環境變量
- 3. 環境變量
- 4. 環境變量
- 5. 環境變量
- 6. 環境變量
- 7. 環境變量
- 8. 環境變量,變量名
- 9. Cloud9環境變量
- 10. netbeans環境變量
- 11. Access環境變量
- 12. Rails環境變量
- 13. Eclipse環境變量
- 14. 環境變量iOS
- 15. 環境變量(process.env.VCAP_APP_PORT)
- 16. PHP環境變量
- 17. Jenkins環境變量
- 18. PHP環境變量
- 19. Supervisord環境變量
- 20. Hadoop環境變量
- 21. RVM環境變量
- 22. TeamCity環境變量
- 23. WinDbg環境變量
- 24. 環境變量C++
- 25. Linux環境變量
- 26. Ruby環境變量?
- 27. 環境變量2013
- 28. Ruby環境變量
- 29. Powershell環境變量
- 30. 與環境變量
你得到的**確切錯誤**消息是什麼? – Jens 2012-07-24 10:07:04