Linux 中 fg、bg、jobs 等指令(转)

记录总结一下 Linux 中 fgbgjobs&ctrl + z 等相关指令对任务进程的操作。

一、基本用法

1.1 & 和 jobs 指令

& 用在一个命令的最后,可以把这个命令转换为后台运行的任务进程。

jobs 查看当前终端有多少在后台运行的进程。

  • jobs 命令执行的结果, 表示是一个当前的作业,- 减号表示是一个当前作业之后的一个作业。

  • jobs -l 选项可显示所有任务的进程号 pid

  • jobs 的状态可以是 runningstoppedterminated。但是如果任务进程被终止了(kill),当前的终端环境中也就删除了任务的进程标识;也就是说 jobs 命令显示的是当前 shell 环境中后台正在运行或者被挂起的任务进程信息

1.3 fg 和 bg 指令

fg 将后台任务进程调至前台继续运行,如果后台中有多个任务进程,可以用 fg %num 将选中的任务进程调至前台。

bg 将挂起的任务进程重新启动运行,如果有多个暂停的任务进程,可以用 bg %num 将选中的任务进程启动运行。

%num 是通过 jobs 命令查到的后台正在执行的任务的序号(不是 pid

二、进程的挂起

2.1 后台进程的挂起

  • 在 solaris 中通过 stop 命令执行,通过 jobs 命令查看任务号(假设为 num),然后执行:stop %num

  • 在 redhat 中,不存在 stop 命令,可通过执行命令 kill -stop PID,将进程挂起

2.2 前台进程的挂起

ctrl + z:可以将一个正在前台执行的任务放到后台运行,并且挂起

三、挂起进程重新运行

  • 通过 bg %num 即可将挂起的任务进程的状态由 stopped 改为 running,仍在后台运行

  • 通过 fg %num 即可将挂起的任务进程转为前台执行

四、进程的终止

4.1 后台进程的终止

  • 方法一: 通过 jobs 命令查看任务号(假设为 num),然后执行:kill %num

  • 方法二: 通过 ps 命令查看任务的进程号(PID,假设为 pid),然后执行:kill pid

4.2 前台进程的终止

执行 ctrl+c 即可终止前台执行任务进程

假设要后台运行 xmms,可通过命令:xmms &。但万一你运行程序时忘记使用 & 了,又不想重新执行,你可以先使用 ctrl+z 挂起任务进程,然后敲入bg 命令,这样任务进程就在后台继续运行了。

posted @   鸭子船长  阅读(1214)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2021-08-09 设置其他用户组使用docker
2018-08-09 cmake交叉编译android(转)
2018-08-09 wwindows文件放入linux后多出换行符
2018-08-09 JNI 引用问题梳理(转)
2017-08-09 rpm安装找不到.so库文件(linux动态库连接的相关知识)(转)
2017-08-09 Linux下的tar压缩解压缩命令详解(转)
2017-08-09 Linux系统如何查看版本信息
点击右上角即可分享
微信分享提示