只是為了玩弄腳本製作,我製作了一個(我相信?)應該在啟動時打開終端的腳本:
#!/bin/bash
#start terminal at startup
#/usr/bin/gnome-terminal
我把它放在 /etc/init.d 目錄中,然後運行這個
update-rc.d myscript defaults
但當我重新啟動電腦時絕對沒有任何反應。為什麼?
答案1
簡短回答:
gnome-terminal
是一個GUI應用程式。因此只能運行作為用戶。當您嘗試運行它時,還沒有用戶登入。將(運行 - 的命令)腳本放在啟動應用程式中。
你不需要一個腳本根本不但是,您可以將命令直接新增到啟動應用程式。
這將gnome-terminal
在您登入後開始。
除此之外,您的運行命令gnome-terminal
不正確。應該是/usr/bin/gnome-terminal
(正如 @steeldriver 提到的,謝謝),或者,因為它在 中$PATH
,所以簡單地gnome-terminal
。
答案2
腳本中的主要錯誤是,在第三個語句中,您實際上註解掉了開啟終端機的命令。請刪除“#」來自第三個語句。同時您可以簡單地使用gnome 終端激活它,但它應該作為用戶本身運行。所以這意味著將它添加到 update-rc 也不起作用。如果您更傾向於終端方式,那麼您可以在 crontab 中新增腳本並將其新增至使用者的 crontab 檔案中重啟約束。這將在啟動時運行您的腳本。所以我總結如下:
您的檔案名稱為 script.sh :
#!/bin/bash
#start terminal at startup
gnome-terminal
使用以下命令使腳本可由使用者執行。
chmod u+x /path/to/script.sh
現在開啟終端機並編輯使用者的 crontab,如下所示:
crontab -e -u username
進行相應的變更後,將以下語句新增至文件底部。
@reboot /path/to/script.sh
現在重新啟動。就是這樣。