boxmoe_header_banner_img

Hello! 欢迎来到悠悠畅享网!

文章导读

Linux命令行中jobs与bg、fg命令详解


avatar
作者 2025年10月10日 7

jobs命令查看当前终端作业,bg将暂停的作业放到后台运行,fg将作业调至前台;例如用Ctrl+Z暂停后可分别用bg或fg恢复,配合作业号%1等操作更精准,适用于多任务处理,但作业随会话结束而终止。

Linux命令行中jobs与bg、fg命令详解

linux命令行中,jobsbgfg是用于管理后台作业的常用命令。它们帮助用户查看、暂停、恢复和切换正在运行的任务,特别是在使用终端进行多任务处理时非常实用。

jobs:查看当前终端中的作业

执行jobs命令可以列出当前shell会话中所有已启动的作业(包括前台和后台进程)及其状态。

常用选项:

  • jobs:显示当前shell的所有作业
  • jobs -l:显示作业及其对应的进程ID(PID)
  • jobs %n:仅显示指定作业号(如%1)的信息

输出示例:

 [1]  + suspended  vim todo.txt [2]  - running    sleep 300 & 

其中方括号中的数字是作业号,“+”表示最近使用的作业,“-”表示次近使用的作业。状态可能是 running、suspended、done 等。

bg:将作业放到后台继续运行

当你按下 Ctrl+Z 暂停一个前台进程后,可以使用 bg 命令让它在后台继续执行。

基本用法:

  • bg:恢复最近暂停的作业到后台运行
  • bg %1:恢复指定作业号(如%1)到后台运行

例如:

 $ sleep 600 ^Z [1]+  Stopped    sleep 600 $ bg %1 [1]+ sleep 600 & 

此时sleep命令在后台继续运行,不会阻塞终端。

Linux命令行中jobs与bg、fg命令详解

行者AI

行者AI绘图创作,唤醒新的灵感,创造更多可能

Linux命令行中jobs与bg、fg命令详解100

查看详情 Linux命令行中jobs与bg、fg命令详解

fg:将作业调到前台运行

fg 命令用于将后台或暂停的作业恢复到前台继续执行。

常见用法:

  • fg:恢复最近一个作业到前台
  • fg %2:将作业号为%2的进程调至前台

例如你有多个暂停的任务:

 $ jobs [1]-  Stopped    vim draft.md [2]+  Stopped    python3 server.py $ fg %1 vim draft.md 

这时vim会在前台恢复,你可以继续编辑文件。

实际使用场景与技巧

这些命令常用于以下情况:

  • 临时中断一个长时间运行的命令(如编辑器、下载任务),先做别的事
  • 把忘记加&的命令先Ctrl+Z暂停,再用bg放后台
  • 在多个任务之间快速切换(如调试程序和查看日志)

注意:这些作业只属于当前shell会话。如果关闭终端,未完成的作业通常会被终止。若需长期后台运行,建议结合nohup或使用screen/tmux工具

基本上就这些。掌握jobs、bg、fg能显著提升你在终端下的工作效率,尤其适合喜欢纯命令行操作的用户。不复杂但容易忽略细节,比如作业编号和前后台切换时机。熟练之后,多任务处理会更得心应手。



评论(已关闭)

评论已关闭

text=ZqhQzanResources