Jobs是Linux中的一个指令,用于控制进程或作业。它可以操作后台运行的进程或作业,并且可以使它们暂停、恢复、终止或关闭。在本篇攻略中,我们将详细讲解jobs命令的作用和使用方法。
1. jobs的作用
在Linux系统中,作业可以分为前台作业和后台作业。前台作业是在终端窗口中直接执行的作业,执行完毕后会等待下一个操作。后台作业是在后台运行的作业,执行后会不会等待下一个操作,而是继续运行。这时,需要使用jobs命令来控制后台作业。
jobs命令可以用于以下操作:
- 列出当前所有后台作业
- 将后台作业置于前台
- 终止正在运行的作业
- 暂停和恢复后台作业
- 在后台运行新的任务
2. jobs的使用方法
2.1 列出后台作业
在Linux中,可以通过jobs命令列出所有正在后台运行的作业。命令格式如下:
jobs [-lnprs] [jobspec ...]
其中,jobspec表示作业号,-n参数表示列出所有编号为n的作业,-n-表示列出所有编号大于等于n的作业,%n表示列出编号为n的作业。
例如,我们在后台运行一个sleep命令:
$ sleep 100 &
[1] 8561
接下来我们使用jobs命令列出自己的所有后台作业:
$ jobs
[1]+ Running sleep 100 &
其中,[1]+表示作业号,Running表示作业状态为正在运行,sleep 100 &表示作业命令。
2.2 切换后台作业到前台
可以使用fg命令将后台作业切换到前台,例如:
$ sleep 100 &
[1] 8561
$ fg %1
其中,%1表示作业号为1的后台作业。这时候,作业就会被切换到前台,继续执行。
2.3 终止正在运行的作业
在Linux中,可以使用kill命令终止指定的进程或作业。例如:
$ sleep 100 &
[1] 8561
$ kill %1
其中,kill %1表示终止作业号为1的后台作业。
2.4 暂停和恢复后台作业
在Linux中,可以使用Ctrl + z快捷键将当前正在运行的前台作业暂停,并将其放到后台。例如:
$ sleep 100
^Z
[1]+ Stopped sleep 100
其中,^Z表示Ctrl + z按下后的结果,Stopped表示作业被暂停。
接下来,我们可以使用bg命令将后台作业恢复成前台作业。例如:
$ bg %1
[1]+ sleep 100 &
其中,bg %1表示将作业号为1的后台作业恢复成前台作业。
2.5 在后台运行新的任务
在Linux中,可以使用&符号在后台运行新的任务。例如:
$ top &
[1] 8625
其中,&表示将top命令放到后台运行。
3. 实例说明
在Linux中,jobs命令可以帮助我们控制后台作业,下面给出两个实例说明:
3.1 实例一:在后台运行命令
$ top &
[1] 8625
在这个实例中,我们使用&符号将top命令放到后台运行。我们可以使用jobs命令查看所有后台作业的状态和作业号。
$ jobs
[1]+ Running top &
使用kill命令结束top命令。
$ kill %1
3.2 实例二:切换后台作业到前台
$ sleep 100 &
[1] 8561
$ top &
[2] 8625
$ jobs
[1]- Running sleep 100 &
[2]+ Running top &
在这个实例中,我们在后台运行了sleep和top两个命令,并使用jobs命令列出作业号和状态。我们可以使用fg命令将后台作业切换到前台。
$ fg %1
这时,sleep命令就会被切换到前台,在完成后就会回到命令行。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解Linux jobs命令:查看当前终端放入后台的工作 - Python技术站