文档章节

Shell jobs 任务管理

傅易
 傅易
发布于 2016/11/20 02:47
字数 458
阅读 111
收藏 6

在一个 tty 里,我们可以运行多个任务,并切换激活不同的任务到前台。注意,任务管理仅限于同一个 tty 执行的任务。

状态

  • Running 运行中
  • Stopped 已暂停
  • Done 执行完毕

<command> &

在一个命令后添加 & 即可简单的放入后台运行。

通过 & 放置到后台的命令,仍保持 Running 状态,默认的标准输出和标准错误输出仍为终端,也就是说你仍然会看到它打印出的信息,这应该通过重定向来解决。如果输出的内容不需要,可以简单的重定向到 /dev/null

当 tty 断开连接时,任务会收到 SIGHUP 信号而被杀死,如果需要持续运行,则需使用 nohup 命令将其放置到系统后台,而非当前 tty 的后台,如:

$ nohup php job.php 2>&1 &

这将放入系统后台运行 php job.php,并将 stderr 重定向到 stdout。

CTRL+Z

这将暂停当前任务,成为 Stopped 状态,并放入任务列表。

jobs

显示所有当前任务,如:

$ jobs
[1]+ Stopped vim
[2]- Running php job.php 2>&1 &

fg

通过 fg [%n] 来激活任务到前台,如果省略 %n 参数,则默认激活标记为 + 的任务,且标记为 - 的任务将被标记为 +

bg

通过 bg [%n] 来运行 Stopped 状态的后台任务,任务将继续运行,状态变为 Running,且命令后增添了 & 字样。

当你忘记将任务放入后台运行,即可组合使用 CTRL+Zbg 来弥补它。

kill

通过 kill –signal %n 来快捷地杀死后台任务。

signal 常见的有:

  • 1 SIGHUP 终端断开连接
  • 2 SIGINT 中断(CTRL+C
  • 3 SIGQUIT 退出(CTRL+\\
  • 9 SIGKILL 强行终止
  • 15 SIGTERM 终止
  • 18 SIGCONT 继续(fgbg
  • 19 SIGSTOP 暂停(CTRL+Z

© 著作权归作者所有

共有 人打赏支持
傅易
粉丝 28
博文 105
码字总数 64235
作品 0
海淀
后端工程师
Linux后台进程管理

fg、bg、jobs、&、ctrl + z命令 一、 & 加在一个命令的最后,可以把这个命令放到后台执行 ,如gftp &, 二、ctrl + z 可以将一个正在前台执行的命令放到后台,并且处于暂停状态,不可执行 三、...

Adairs
2016/03/10
3
0
linux 学习笔记 (4) —— Linux 任务管理

Linux 任务管理 ---------------- Shell命令: command& 让进程在后台运行 ctrl + z 将一个正在前台执行的命令,放到后台,并且暂停 jobs 列出当前shell环境中已启动的任务状态 fg %n 让后台...

TdadaT
2012/11/02
0
0
【Linux】fg bg ctrl + z jobs & 等命令

【Linux】fg bg ctrl + z jobs & 等命令 转自: http://blog.chinaunix.net/space.php?uid=20697318&do=blog&id=1891382 fg、bg、jobs、&、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎...

片刻
2015/12/31
87
0
Linux Shell下的后台运行及其前台的转换

当用bash启动一个程序,你可以用在程序后加&,实现程序在后台运行; 例如: emacs & 但如果你忘了输入&;但你又不想把程序停止后重新启动; 你可以这么做: 按Ctrl + Z暂停前台工作,比如前面提到的...

sflfqx
2014/07/31
0
0
在SaltStack中使用Schedule(计划任务)

SaltStack可以很容易的实现批量计划任务的创建啊和管理 官方文档: http://docs.saltstack.com/en/latest/topics/jobs/index.html 按照官方文档的描述,计划任务有3种配置方式,分别是: 在maste...

憨厚的瓜
2014/06/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

python做文本内容指定区域字符串替换

需求: 因为公司项目需要做SEO优化,所以对项目中的各种长连接做优化,比如本文中提到的精简路径;之前已经批量吧文本的路径名字等做过修改,这里不再赘述;这里的问题是外部的路径修改了,文...

坦途abc
16分钟前
0
0
MySQL 关键字模糊匹配,并按照匹配度排序

MySQL 关键字模糊匹配,并按照匹配度排序。 方式一、按照关键字搜索,然后根据关键字所占比例排序 SELECTdrug_name,pinyinFROMtbl_drugWHEREpinyin LIKE '%AM%'ORDER BY...

yh32
26分钟前
0
0
虚拟机学习之一:java内存区域与内存溢出异常

1.运行时数据区域 java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途和创建、销毁时间,有的区域伴随虚拟机进程的启动而存在,有些区...

贾峰uk
26分钟前
0
0
Spring加载properties文件的两种方式

在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可,不需要修...

架构师springboot
42分钟前
0
0
分布式事务,原来可以这么玩?

多个数据要同时操作,如何保证数据的完整性,以及一致性? 答 : 事务 ,是常见的做法。 举个栗子: 用户下了一个订单,需要修改 余额表 , 订单 表 , 流水 表 ,于是会有类似的伪代码: st...

微笑向暖wx
45分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部