1. 列出后台作业
在删除之前,最好先确认当前正在运行或停止的作业。
jobs
这个命令会显示一个作业列表,每个作业都有一个编号(JID)。
2. 杀死(终止)作业
如果你想终止一个正在运行的作业,可以使用 kill
命令,结合 jobs
命令返回的作业编号。
kill %JID
将 JID
替换为你要终止的作业的实际编号。例如,如果你想终止编号为 1 的作业:
kill %1
3. 从作业列表中删除已停止的作业
如果你有一个已经停止的作业(例如,你按下了 Ctrl+Z
暂停了一个进程),并且你不想再继续它,你可以通过以下步骤将其从作业列表中移除:
-
将作业放到前台:
fg %JID
这会将作业带到前台。
-
然后按下
Ctrl+C
终止它:
在作业回到前台后,按下Ctrl+C
组合键,这将发送一个中断信号,通常会终止程序并将其从作业列表中移除。
4. 使用 disown
命令(针对不希望被Shell管理,但希望继续运行的作业)
如果你想让一个后台作业继续运行,即使你关闭了当前终端会话,并且不希望它再显示在 jobs
列表中,可以使用 disown
命令。这不会“删除”作业,而是将其从 shell 的作业控制中移除。
disown %JID
或者,如果你想 disown
最近的一个后台作业,可以不带参数:
disown
总结
jobs
: 查看所有后台作业。kill %JID
: 终止正在运行的作业。fg %JID
然后Ctrl+C
: 终止停止的作业并将其从列表移除。disown %JID
: 让作业在后台独立运行,不再受 shell 控制。