2017-05-07 115 views
0

我需要在後臺運行的腳本,等待按下某個鍵。我有一個腳本,當終端打開時工作。當我嘗試使用&時 - 它無法正常工作。該腳本在後臺運行,但按鍵不起作用。當我嘗試使用nohup然後我有read的錯誤 - 描述符不好。 有人可以幫我嗎?在後臺運行的Bash腳本,正在等待密鑰

回答

1

當終端打開(並且被選中,如果終端仿真程序在x服務器上運行),輸入(按鍵敲擊等)被引導到終端;因此,你的程序工作。

現在,考慮一個例子:假設您創建了一個在後臺運行的腳本,並且通過按下字母「a」來激活它。如果按「a」觸發了腳本(終端關閉),那麼用戶將永遠無法(例如)在不觸發腳本的情況下在字文檔或Web搜索中鍵入字母「a」!

因此,您正在尋找的是key bindkeyboard shortcut,它將綁定一個密鑰(組合),如ctl+j+k以啓動您想要的腳本。

在Linux中,這可以輕鬆完成,請參閱this for Ubuntuthis for Lubuntu

重要提示:,如果你的腳本需要root權限才能正常工作,那麼你通常會通過gksugksudo喚起它,否則它不會運行