腳本完成運行後,如何保留從shell腳本中設置的環境變量?shell腳本完成後保留環境變量
3
A
回答
7
這是不可能通過運行腳本。該腳本產生了它自己的子shell,當腳本完成時它會丟失。
爲了保存export
s表示你可能在你的腳本,你可以叫他們這樣,這將它們添加到當前環境:
. myScript.sh
通知的.
之間的空間myScript.sh
部分。
1
運行腳本如下:
source <script>
-OR-
. <script>
這將在當前shell中運行的腳本,在當前shell定義變量。腳本完成後,變量將保留在當前shell中。
1
環境變量存在每個進程私有的環境。 shell將其導出的變量COPY傳遞給它的孩子作爲他們的環境,但是他們沒有辦法將他們的環境傳遞迴父母或其子進程以外的任何進程。 您可以打印這些變量並將它們加載到父項中。 或者已經提到過,你可以使用「源腳本」或者「腳本」在當前shell中運行你的腳本(如果你的腳本不在你的PATH中,你可能需要./script)。 有些工具會打印它們的變量,而外殼可以使用反引號來加載它們,如ssh-agent
。這樣,無論什麼ssh代理打印將作爲命令運行。如果它打印出像「VAR1 = VAL; VAR2 = VAL2」的東西,可以做你想做的事情。
相關問題
- 1. 環境變量不會在shell腳本
- 2. shell腳本變量 - 如何完成substituition
- 3. 在C#中設置執行完成後保留的環境變量
- 4. 甚至在退出後,Python腳本中的環境變量仍然保留
- 5. SUA-Korn shell中不保留的環境變量
- 6. 在Java中保留環境變量
- 7. 通過sudo - 環境變量從另一個shell腳本調用shell腳本?
- 8. 我的shell腳本沒有看到環境變量的變化
- 9. shell腳本 - 完成
- 10. Power Shell的環境變量
- 11. 從gpg加密的shell腳本設置環境變量?
- 12. 如何使用詹金斯環境變量的shell腳本?
- 13. 在Lua 5.3腳本中設置shell環境變量
- 14. 永久設置環境變量的Shell腳本
- 15. 如何使用shell腳本設置全局環境變量.sh
- 16. 用於設置環境變量的shell腳本
- 17. 進樣環境變量爲詹金斯與shell腳本
- 18. 從shell腳本可移植地設置環境變量
- 19. 如何從ant腳本爲shell設置環境變量?
- 20. 用於設置環境變量的Shell腳本
- 21. 在shell腳本中設置環境變量OS X
- 22. 無法在shell腳本中獲取環境變量
- 23. 在Xcode中運行沒有環境變量的shell腳本?
- 24. 在shell腳本中使用java classpath的環境變量
- 25. 執行VBA shell腳本設置環境變量
- 26. 通過python腳本設置shell環境變量
- 27. 使用shell腳本導出環境變量
- 28. 的Bash shell腳本:如何設置JAVA_HOME環境變量
- 29. Shell腳本完成後執行命令
- 30. 應用程序退出後保留環境變量
使用導出命令:http://stackoverflow.com/questions/7328223/unix-export-command – congusbongus
將它們添加到文件'〜/ .bash_profile'。 – 2013-02-07 02:09:29
@CongXu'export'將變量傳遞給孩子,而不是父母。 – Beta