侧边栏壁纸
博主头像
张种恩的技术小栈博主等级

行动起来,活在当下

  • 累计撰写 747 篇文章
  • 累计创建 65 个标签
  • 累计收到 39 条评论

目 录CONTENT

文章目录

Linux基础(51)之Linux的作业控制

zze
zze
2019-12-10 / 0 评论 / 0 点赞 / 572 阅读 / 1661 字

不定期更新相关视频,抖音点击左上角加号后扫一扫右方侧边栏二维码关注我~正在更新《Shell其实很简单》系列

作业的概念

一个作业通常包括几个进程,几个进程共同完成一个任务,即作业。

作业的类别

  • 前台作业:通过终端启动,且启动后一直占据终端的作业;
  • 后台作业:可以通过终端启动,但启动后立即转入后台运行(释放终端);

让作业运行于后台

  • 对于运行中的作业,直接使用 CTRL + Z,之后可以通过 fg 命令将后台作业切换到前台;
  • 对于尚未启动的作业,直接在要执行的命令后加上 & 即可将作业启动到后台;

此类作业虽然被送往后台,但其依然与终端相关,作业会随终端的终止而终止。
如果希望作业送往后台后,剥离与终端的关系,可使用 nohup COMMAND &

查看后台作业

使用 jobs 命令可查看后台的作业列表。

例:

我先后将 vim anaconda-ks.cfgtopdstat 进程通过 CTRL + Z 送往后台,然后执行 jobs,结果如下:

image.png

  • 上述作业列表中 123 为作业编号;
  • + 标识的作业表示执行 fg 命令默认切换到前台的作业;
  • - 标识的作业表示执行 fg 命令第二个切换到前台的作业;

作业控制

下面命令中的 % 号大多数情况时可省的,但建议不要省,因为 % 其实是用来和进程做区分的。

切换作业到前台

使用 fg 命令可将后台的指定作业切换到前台,使用格式如下:

fg [[%]job_num]
    job_num:作业编号,指定时表示切换该编号的作业到前台,省略时切换 jobs 列表中 + 标识的进程到前台;

让后台作业继续运行

使用 bg 命令可让在后台处于停止状态的作业继续在后台运行,使用格式如下:

fg [[%]job_num]
    job_num:作业编号,让该编号的作业继续在后台运行;

终止后台作业

终止后台作业也可使用 kill 命令,使用格式如下:

kill [%job_num]
    job_num:作业编号,终止该编号的作业,% 号不可省略;
0

评论区