3
在後臺運行進程並僅在需要時才接收輸出的最佳方式是什麼?如何捕獲後臺進程的輸出
預期用法:使每個會話初始化具有大量初始化的提示輸出腳本,而不是在每次提示運行時進行初始化。注意:需要雙向通信:shell需要告訴何時需要新提示,最後的命令狀態是什麼。
已知的解決方案:
- 上的文件系統的一些明確的文件(FIFO文件,Unix套接字):這將是更好的避免這種情況,因爲這意味着我需要選擇文件名,以確保它是garbage-在退出時收集並添加一些內容以清除在崩潰時不再使用的文件。
- zsh/zpty模塊:這個工作有點像矯枉過正,並且在bash中不起作用。
- coprocesses:不能在bash和AFAIK中工作,每個會話只允許一個協處理。