如何在Bash中将已启动作业调至前台并禁用作业控制?
已启动进程禁用Ctrl+Z暂停功能的解决办法
方法1:直接修改终端信号映射
直接在当前终端执行这条命令,立刻就能让Ctrl+Z不再触发进程暂停:
stty stop undef
之后要是想恢复Ctrl+Z的功能,执行:
stty stop ^Z
这个办法不用暂停正在跑的进程,执行完马上生效,而且对当前终端里的所有进程都管用。
方法2:关闭shell作业控制
如果只针对当前进程处理,可以按这几步来:
- 先按
Ctrl+Z把进程暂停 - 在shell里输入这条命令禁用作业控制:
set +m - 马上把进程调回前台:
fg
进程回到前台后,作业控制已经关了,再按Ctrl+Z就不会暂停它了。不过要注意,这会关掉当前shell的作业控制,之后这个shell里的其他进程也没法用Ctrl+Z、fg、bg这些作业控制命令了。
内容的提问来源于stack exchange,提问作者SeparatedScheme
相关产品推荐
相关产品推荐

