Linux中后台执行任务
执行时, 可以在命令最后添加 & 使其后台执行, 但是其输出依然会显示, 而且其运行是和当前shell绑定的
如果脚本已经运行, 可以使用Ctrl-Z暂停, 然后使用 bg 让其转入后台, 再 disown 解除关联, 例如:
- ^Z
- []+ Stopped make -j2
- [tomcat@n00 master]$ bg
- []+ make -j2 &
# 注意: disown之后, 此任务将不出现于jobs, 也不能再转回前台, 但是输出依然是和当前shell绑定的- [tomcat@n00 master]$ disown
- [tomcat@n00 master]$ exit
查看在后台运行的任务
- jobs -l
- # -l: 用于显示任务的 process id
将后台任务转回前台
- %process-id
- # or
- fg process-id
如果要在屏显的同时记录日志, 通过tee命令
- $ make -j2 | tee output.log
对于需要在关闭shell后还需要继续执行的任务, 需要使用nohup, 例如
- nohup make -j1 TARGET_DEVICES=y1 > ~/openwrt/logs/.log >& &
- # 其中执行的命令是"make -j1 TARGET_DEVICES=y1"
上面的命令会将输入记录到log文件. 对于上面的命令的解释:
bash 中 0, 1, 2 三个数字分别代表 STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO, 即标准输入(一般是键盘), 标准输出(一般是用户终端控制台), 标准错误(出错信息输出)
- 0 标准输入 (一般是键盘)
- 1 标准输出 (一般是用户终端控制台)
- 2 标准错误 (出错信息输出)
输入重定向, 例如 cat < test.c 将 test.c 重定向为 cat 命令的输入源.
输出重定向, 用其他输出目标替换标准输出, 例如 ls > 1.txt 将 ls 的结果从标准输出重定向为 1.txt 文本. 有时候会看到如 ls >> 1.txt这类的写法, >> 的区别在于 > 用于新建而 >> 用于追加, 即 ls > 1.txt 会新建一个 1.txt 文件并且将 ls 的内容输出到新建的 1.txt 中, 而 ls >> 1.txt 则用在 1.txt 已经存在而我们只是想将 ls 的内容追加到 1.txt 文本中的时候
Linux中后台执行任务的更多相关文章
- linux 命令后台执行
我想把updatedb命令(用于重新建立整盘索引的命令)放在后台运行.因为我不想眼睁睁的看着机器建立索引,我还想编会儿程序呢: # updatedb & [1] 23336 注释:在所要执行的 ...
- Linux命令后台执行技巧小结
1.最简单的方法: command & 例如: top & 此时显示job编号和后台进程号 [] 2.正在运行的程序放入后台 Ctrl - Z 3.查看有哪些后台进程及状态 jobs ...
- linux命令后台执行
fg.bg.jobs.&.nohup.ctrl+z.ctrl+c 命令 一.& 加在一个命令的最后,可以把这个命令放到后台执行,如 watch -n 10 sh test.sh &am ...
- python脚本linux上后台执行
1.脚本后加& 加了&以后可以使脚本在后台运行,这样的话你就可以继续工作了.但是有一个问题就是你关闭终端连接后,脚本会停止运行 python3 run.py >/dev/null ...
- Linux中为什么执行自己的程序要在前面加./
前言 在Linux中,我们执行内置命令时,直接输入命令名称即可,如: $ mv a b #将a重命名为b 而在执行自己写好的程序时,却要带上./,例如: $ hello hello: comm ...
- linux下后台执行shell脚本nohup
(一)使用nohup后台执行脚本 脚本执行结果记录到nohup.out文件中 (二)使用&后台执行脚本 使用&符号在后台执行命令或脚本后,如果你退出登录,这个命令就会被自动终止掉
- Linux的后台执行进程之nohup
nohup 用途:LINUX命令用法,不挂断地运行命令. 语法:nohup Command [ Arg ... ] [ & ] 描述:nohup 命令运行由 Command 参数和任何相关 ...
- Linux中exec()执行文件系列函数的使用说明
函数原型: 描述: exec()系列函数使用新的进程映像替换当前进程映像. 工作方式没有什么差别, 只是参数传递的方式不同罢了. 说明: 1. 这6个函数可分为两大类: execl( ...
- shell 脚本中后台执行命令 &
最近遇到一个问题, 执行脚本,脚本调用 一个命令,命令(deamon)是一个守护进程,为了调试,取消了守护进程模式.导致命令后边的其他命令(echo "456")都无法执行. de ...
随机推荐
- WPF之让ListView中的CheckBox居中显示
第一步:在资源中定义一个居中的样式: <Window.Resources> <Style x:Key="ListViewItemStyle" TargetType ...
- addEventListener与removeEventListener
addEventListener:添加事件监听器 element.addEventListener(event, function, useCapture) event:事件类型,字符串,不要加&qu ...
- Hibernate 系列教程9-自关联
自关联:本质还是原来双向一对多,原来要配置两个类,现在全部都配置在一个类里面 Employee public class Employee { private Long id; private Str ...
- PID控制学习笔记(一)
比例控制往往会存在稳态误差(该结论适用于0型对象) 由比例度的定义和意义,比例增益Kc越大,即直线的斜率越大,则,越快达到平衡,稳态误差越小,因此在保证系统相对稳定性一定的条件下,总是希望比例增益越大 ...
- Android之SurfaceView学习(一)转转
Android之SurfaceView学习(一) 首先我们先来看下官方API对SurfaceView的介绍 SurfaceView的API介绍 Provides a dedicated drawing ...
- HDU 3346 Lucky Number
水题 #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> us ...
- ZEN_CART_如何添加自定义页面
按照下面的路径,添加自己的文件,就OK了 以about us页面为例, 默认模板 \includes\templates\template_default\templates\tpl_about_us ...
- 使用for循环还是foreach循环?
很多时候我们很自然的认为,for循环的时候使用foreach和原来的for循环用下标的方式遍历是相同的. 而且因为foreach循环写法简单,很容易理解,而且少去了很多麻烦的变量,所以估计在学会使用f ...
- opencv 相关一个很好的博客
http://blog.csdn.net/zouxy09/article/category/1218765 图像卷积与滤波的一些知识点 图像卷积与滤波的一些知识点zouxy09@qq.comhttp: ...
- new关键字的理解-问题型
//输出的结果是?????????//The answer is good and gbc public class Example { String str=new String("goo ...