pos*_*ing 20 command-line job-control
如果我这样做ping google.com &
,该过程将进入后台并不断向我显示 ping 详细信息。我仍然可以将终端与其他命令一起使用,但是 ping 的输出和其他命令的输出会混淆(这不是问题),但是我根本无法终止这个 ping 过程。
为此,我想将它带到前台,然后按 ctrl + c 或其他什么。我尝试使用fg
,但它也不起作用。那么ping google.com &
在我的 ping 命令结束时按下回车键后,我该如何回到前台呢?
Zan*_*nna 34
fg
是前景作业的正确命令,但如果有多个作业正在运行,您应该指定作业编号。如果您只输入fg
,最后一个后台作业(被 shell 视为当前作业)将被置于前台。
获取当前职位:
$ jobs
[1]+ ping google.com &
Run Code Online (Sandbox Code Playgroud)
通过指定数字将作业置于前台:
fg %1
Run Code Online (Sandbox Code Playgroud)
该命令可能会被正在运行的进程的输出中断,但它仍然可以工作,您可以忽略中断。
然后点击ctrl+c中断并停止该过程
如评论中所述,您还可以按作业编号发送信号,例如 kill %1
为了完整起见,如果您&
在调用进程时没有使用,您可以通过先用ctrl+冻结z然后键入将其发送到后台bg