Bash
禁用 bash 中的作業控制 (CTRL-Z)
有時我會遇到這種情況,我不小心按了
CTRL
+Z
並且我的應用程序消失在後台。我知道,我可以把它帶回來fg
,所以這沒什麼大不了的。但我想知道job control
無論如何要關閉它。在我的一生中,我不記得有什麼時候需要它,它在我看來只是過去的遺物。這可以
job control
完全禁用嗎?或者我錯過了什麼,這個功能很有用?我將如何在我的.bashrc
更新:
我已經
set +m
按照@Falsenames 的建議進行了嘗試。但是,這僅在我在終端中鍵入時才有效。添加set +m
到我.bashrc
的沒有效果。
您可以將以下內容添加到命令行中以停止使用監視模式。
設置 +m
如果您以後真的需要 ctrl-z 功能,您只需鍵入“set -m”即可啟用對該會話的監控。
來自man bash。請注意,這是針對“-m”的,“+m”將該設置切換為禁用。
set [+abefhkmnptuvxBCEHPT] [+o option] [arg ...] .... -m Monitor mode. Job control is enabled. This option is on by default for interactive shells on systems that support it (see JOB CONTROL above). Background processes run in a separate process group and a line containing their exit status is printed upon their completion.
作為最後的努力,您可能希望手動編譯沒有“–enable-job-control”標誌的 bash 版本。這是來自 GNU的快速安裝指南。如果您確實選擇了這條路線,請不要替換 /bin/bash 以防萬一後台程序通過 bash 執行期望作業控制。相反,製作 /bin/bash.alt 或其他文件。您可以通過執行 usermod 或以 root 身份編輯 /etc/passwd 將您的預設 shell 更改為這個備用 shell。