📅  最后修改于: 2023-12-03 15:25:40.497000             🧑  作者: Mango
在Linux的Shell-Bash环境中,我们可以创建并运行多个作业,但有时候我们可能需要停止其中一个作业并回到终端操作。这个时候,我们需要知道如何恢复停止的作业,以便重新开始作业的执行。
在Shell-Bash环境中,我们可以使用 jobs
命令来列出当前所有正在执行的作业和已经停止的作业。其中,jobs
命令会显示每个作业的编号,作业类型(正在执行的作业前面有一个 +
符号,已经停止的作业前面有一个 -
符号),作业状态(运行或停止)和命令。
$ jobs
[1]+ Running /usr/bin/php ./long-running-script.php &
[2]- Stopped /usr/bin/python ./some-script.py
如果我们需要暂停一个正在执行的作业,可以使用 Ctrl + z
快捷键,这会将作业停止并返回到Shell命令行。
$ /usr/bin/php ./long-running-script.php
^Z
[1]+ Stopped /usr/bin/php ./long-running-script.php
上面的命令显示我们已经暂停了正在运行的作业,其中 [1]+
是作业编号,Stopped
是作业状态。
当我们需要恢复一个停止的作业时,可以使用 fg
命令。如果我们只有一个停止的作业,可以简单地使用 fg
命令来恢复它。如果我们有多个停止的作业,我们必须指定要恢复的作业的编号。
$ fg
/usr/bin/php ./long-running-script.php
注意到 fg
命令会将作业带回前台,并继续执行。如果我们需要将作业放在后台执行,可以使用 bg
命令。
$ bg
[1]+ /usr/bin/php ./long-running-script.php &
这个命令将作业放在后台执行,并显示作业的编号和进程ID号。
在Shell-Bash环境中,我们可以使用 jobs
、 Ctrl + z
、fg
和 bg
命令来管理我们的作业。这些命令可以帮助我们暂停和恢复已经停止的作业,使我们更有效地使用Shell-Bash环境来完成我们的任务。