問題只是在標題中:當您在UNIX shell中運行exec csh
時會發生什麼?爲什麼?在UNIX shell中運行exec csh會發生什麼?爲什麼?
0
A
回答
0
exec
命令將當前進程替換爲指定的進程,因此Unix Shell不再是Unix Shell,而是突然變爲C Shell(csh
,它恰好是一種Unix Shell)。爲什麼?這只是事實上的標準。
0
exec
將用新進程替換當前shell進程。如果你跳過這個命令,你輸入的命令將作爲一個孩子開始,當你退出孩子時返回你的shell。它期望可執行文件作爲第一個參數啓動。
csh
(第一個參數)是可執行文件的名稱。它將在PATH
中搜索。通常它會找到一個安裝了C Shell的系統(如/bin/csh
)或一個C Shell克隆(例如安裝在傳統名稱下的tcsh)。
因此,您正在用C Shell取代當前的shell會話。除非你是一個有鬍鬚的Unix專家,否則你不會那麼想。通常情況下,C Shell在Posix或Bourne Shell中有%
提示符而不是>
。
您可以通過註銷從中恢復。下一次登錄正常的默認shell(很可能不是csh)將會啓動。要使外殼的開關永久使用,請使用chsh
(更改外殼)命令。
相關問題
- 1. 當你在unix shell上鍵入時會發生什麼
- 2. 當我運行bundle exec黃瓜時,幕後會發生什麼?
- 3. 爲什麼不運行--exec運行?
- 4. 在Python3.3中發生了什麼與exec?
- 5. 會發生什麼?
- 6. 在csh中,爲什麼4 - 3 + 1 == 0?
- 7. 爲什麼會發生? java
- 8. 會發生什麼?
- 9. 會發生什麼?
- 10. 爲什麼要運行exec命令?
- 11. 爲什麼發生運行時錯誤?
- 12. 會發生什麼?
- 13. 當我使用'。'執行一個unix shell腳本時會發生什麼?命令?
- 14. 會發生什麼?
- 15. 會發生什麼?
- 16. 爲什麼在這裏會發生ArrayIndexOutOfBoundsException?
- 17. System.Data.SqlClient.SqlTransaction.Dispose中會發生什麼?
- 18. Office VBA會發生什麼?
- 19. 當發生javascript運行時錯誤時會發生什麼?
- 20. reduceByKey在執行時會發生什麼?
- 21. 當程序運行時發生事件時會發生什麼
- 22. 爲什麼從php exec運行時sass --update不會很快?
- 23. 什麼時候會發生?
- 24. 在masterpage中使用radsplitter時運行webapp會發生什麼?
- 25. Java - Runtime.getRuntime()。exec()發生了什麼事?
- 26. 會發生什麼成員
- 27. CFFI-UNIX發生了什麼事?
- 28. Activity.finish()在AsyncTask仍在後臺運行時會發生什麼?
- 29. EntityManager.persist()後會發生什麼
- 30. onDestroy()後會發生什麼
這是一個作業/作業問題?你讀過exec的手冊頁嗎? – Jens