プロセスを終了せずにbashスクリプトプロセスを一時停止/停止できますか? (kill コマンド経由) またはその他のコマンド
たとえば、このスクリプト - install_linux_pkgs.bashはLinux pkgsを段階的にインストールします。
./install_linux_pkgs.bash
私が望むのは、外部スクリプトの進行を停止する(HOLD / HANG)が終了しないことです。
kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL
5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE
9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2
13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT
17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU
25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH
29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN
35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4
39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12
47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14
51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10
55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6
59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX
答え1
ctrl- を使用してプロセスを停止できますz。その後、端末で目的のタスクを実行します。プロセスを続行するにはを使用しますfg
。
または、他の端末で以下を使用してください。
kill -19 <pid>
SIGSTOP
プロセスに(信号番号19)を送信します。このプロセスをキャプチャすることは不可能です。プロセスを続行するには、次のようにします。
kill -18 <pid>
今回は、SIGCONT
プロセスを再実行中/休止状態に切り替えます。
答え2
私はあなたが打撃を与えることができなければならないと思います、そしてそれはCtrl+Z
プロセスを一時停止します。戻る準備ができたら、fg
コマンドを使用するだけでプロセスがフォアグラウンドで再びアクティブになります。またはbg
、コマンドを実行すると、バックグラウンドでプログラムが復活します(と同じ/some/program &
)。