Linux

bash + 如何保存 shell 腳本

  • July 9, 2015

是否可以在不終止程序的情況下保持/停止 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

ctrl您可以使用-停止該過程z。然後在終端中做任何你想做的事情。要繼續該過程,請使用fg.

或者從另一個終端,使用:

kill -19 <pid>

它向SIGSTOP程序發送(信號編號 19)。這是無法擷取的過程。要繼續該過程,請使用:

kill -18 <pid>

這一次SIGCONT是讓程序回到執行/睡眠狀態。

我認為你應該能夠擊中Ctrl+Z,它會暫停這個過程。當您準備好返回它時,只需使用fg命令,您的程序就會在前台恢復活力。或者,您可以發出一個bg命令,它會在後台恢復您的程序(相當於/some/program &

引用自:https://unix.stackexchange.com/questions/214934