是否可以在不终止进程的情况下暂停/停止 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 &
)