Ctrl+Z暂停前台命令,进程进入Stopped状态并放入后台,不终止、不退出;随后可用jobs查看、fg调回前台、bg放后台运行或kill终止。

按 Ctrl+Z 就能立即暂停当前正在前台运行的命令,进程不会退出,而是进入“已停止(Stopped)”状态,并被自动放入后台。这是最轻量、最常用的临时中断方式。
暂停后会发生什么
按下 Ctrl+Z 后,终端会显示类似这样的提示:
[1]+ Stopped sleep 100这表示该任务已被编号为 1 的作业(job),状态是 Stopped,控制权已交还给 shell,你可以继续输入其他命令。
注意:此时进程仍在内存中,占用资源但不执行;它没有被 kill,也没有被终止,只是暂停了。
后续常用操作
-
查看所有挂起或后台任务:运行
jobs,会列出当前 shell 会话中所有作业及其编号、状态(Running / Stopped)和命令 -
在后台继续运行它:执行
bg %1(%1 表示作业号 1),进程就会恢复执行,但留在后台 -
调回前台继续操作:执行
fg %1,进程回到前台,你又能看到输出、接收输入 -
彻底终止这个暂停的任务:用
kill %1,默认发送 SIGTERM;如需强制结束,可用kill -9 %1
几个实用细节
• 如果只按了一次 Ctrl+Z,bg 或 fg 不加参数时,默认操作最近挂起的那个作业
• 作业号(如 %1)不是 PID,不能用 ps 查到;它是当前 shell 维护的本地编号,退出终端后就失效
• 某些交互式程序(如 vim、top)对 SIGTSTP 支持良好;但少数程序可能忽略或无法响应 Ctrl+Z,这时可尝试 kill -19 PID 手动发送 SIGSTOP
• 暂停后若直接关闭终端,该作业会被终止(收到 SIGHUP),如需长期运行,请改用 nohup 或 tmux


















