bash +シェルスクリプトを保存する方法

bash +シェルスクリプトを保存する方法

プロセスを終了せずに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 &)。

関連情報