Shell
如何打開終端並自動執行命令?
我在終端模擬器中。我想打開另一個終端來執行指定的命令。
gnome-terminal -e "zsh -c 'pwd; zsh;'"
在另一個終端中連續且成功地
pwd
執行。zsh
終止後pwd
,zsh 啟動,我可以在第二個終端實例中執行其他命令。但是,當啟動另一個應用程序而不是 時
pwd
,我無法正確結束該長時間執行的程序。例如,當我
Ctrl``C
在下面的命令中鍵入退出 node.js 伺服器時,它也會關閉終端。似乎是通過選項SIGINT
傳遞給第一個。zsh``-c
gnome-terminal -e "zsh -c 'node server.js; zsh;'"
我怎樣才能解決這個問題?
我在bash中試過這個
如果它不起作用,請提前道歉。
我編寫了一個名為 userInput.sh 的 bash 腳本——它等待使用者輸入並結束。
`
## trap ctrl-c and call ctrl_c() trap ctrl_c INT function ctrl_c() { echo "** Trapped CTRL-C" exit } read -p "Press any key to continue... " -n1 -s
現在,當我執行並按 clt+c
gnome-terminal -e "bash -c './userInput.sh; bash;'"
userInput.sh 退出,我仍然有 bash 提示符。
現在我認為在您的情況下,您無需等待使用者輸入,而是執行 node server.js 之類的
## trap ctrl-c and call ctrl_c() trap ctrl_c INT function ctrl_c() { echo "** Trapped CTRL-C" exit } node server.js
假設您將腳本命名為“runNodeJs.sh”,那麼命令將是
gnome-terminal -e "bash -c './runNodeJs.sh; bash;'"