Linux命令之后台运行-nohup &
2014-03-24 19:46
531 查看
Linux/Unix下,通常只有守护进程可在脱离终端的情况下能继续执行,而普通进程在关闭终端时会因收到SIGHUP信号(挂起信号)而退出。当终端退出后,由该终端启动的后台程序自动退出。
若想命令在后台运行,则可用 & 指定命令在后台运行;
若想终端退出后程序不停止运行,则可用nohup命令启动后台程序。
nohup(=no hang up),使命令忽略SIGHUP信号;
[语法] nohup Command [ Arg ... ] [&]
[命令输出说明]
Command 的输出如果没有被重定向,则无论是标准输出(stdout),还是标准错误(stderr),均重定向到nohup.out文件;nohup.out文件缺省写在当前目录下,如果在该目录下无写权限,则试图写到$HOME/nohup.out中,如果仍然失败,整个命令执行失败;
Command的输出如果重定向,则写入指定的重定向文件中;
[退出状态]
126 能查找但不能调用 Command 命令;
127 nohup 命令发生错误或找不到 Command 命令;
否则为 Command 命令的退出状态;
nohup与&的区别:
nohup只是让命令忽略SIGHUP命令而已;
&则让命令在后台运行;
至于该命令是否能在脱离终端后继续执行则要看进程是否是守护进程,如果不是,则需要nohup来帮忙;
PS,引用 http://www.cnblogs.com/allenblogs/archive/2011/05/19/2051136.html
---------以下为引用内容
他是在当shell中提示了nohup成功后还需要按终端上键盘任意键退回到shell输入命令窗口,然后通过在shell中输入exit来退出终端;而我是每次在nohup执行成功后直接点关闭程序按钮关闭终端.。所以这时候会断掉该命令所对应的session,导致nohup对应的进程被通知需要一起shutdown。
这个细节有人和我一样没注意到,所以在这儿记录一下了。
若想命令在后台运行,则可用 & 指定命令在后台运行;
若想终端退出后程序不停止运行,则可用nohup命令启动后台程序。
nohup(=no hang up),使命令忽略SIGHUP信号;
[语法] nohup Command [ Arg ... ] [&]
[命令输出说明]
Command 的输出如果没有被重定向,则无论是标准输出(stdout),还是标准错误(stderr),均重定向到nohup.out文件;nohup.out文件缺省写在当前目录下,如果在该目录下无写权限,则试图写到$HOME/nohup.out中,如果仍然失败,整个命令执行失败;
Command的输出如果重定向,则写入指定的重定向文件中;
[退出状态]
126 能查找但不能调用 Command 命令;
127 nohup 命令发生错误或找不到 Command 命令;
否则为 Command 命令的退出状态;
nohup与&的区别:
nohup只是让命令忽略SIGHUP命令而已;
&则让命令在后台运行;
至于该命令是否能在脱离终端后继续执行则要看进程是否是守护进程,如果不是,则需要nohup来帮忙;
PS,引用 http://www.cnblogs.com/allenblogs/archive/2011/05/19/2051136.html
---------以下为引用内容
他是在当shell中提示了nohup成功后还需要按终端上键盘任意键退回到shell输入命令窗口,然后通过在shell中输入exit来退出终端;而我是每次在nohup执行成功后直接点关闭程序按钮关闭终端.。所以这时候会断掉该命令所对应的session,导致nohup对应的进程被通知需要一起shutdown。
这个细节有人和我一样没注意到,所以在这儿记录一下了。
相关文章推荐
- Linux后台运行命令 nohup command > myout.file 2>&1
- linux的nohup命令的用法。在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用 & 在程序结尾来让程序自动运行。比如我们要运行mysql在后台: /usr/local
- Linux nohup command &后台运行程序+前后台切换命令
- Linux执行shell脚本方式及区别&命令后台运行
- linux 使程序在后台稳定运行 命令 nohup
- linux后台运行&符号、nohup命令、输出重定向等使用方法
- Linux运行与控制后台进程的方法:nohup, setsid, &, disown, screen
- Linux运行与控制后台进程的方法:nohup, setsid, &, disown, screen
- Linux运行与控制后台进程的方法:nohup, setsid, &, disown, screen
- Linux 命令 - fg & bg: 将进程切换到前台(后台)运行
- linux进程后台运行的几种方法 - nohup/setsid/& [转载] 此博文包含图片 (2010-09-23 23:59:24)
- 4.Linux下nohup命令实现退出终端后程序继续后台运行
- linux后台执行命令:&和nohup
- Linux执行shell脚本方式及区别&命令后台运行
- centos shell基础 alias 变量单引号 双引号 history 错误重定向 2>&1 jobs 环境变量 .bash_history source配置文件 nohup & 后台运行 cut,sort,wc ,uniq ,tee ,tr ,split, paste cat> 2.txt <<EOF 通配符 glob模式 发邮件命令mail 2015-4-8 第十二节课
- Linux下让进程在后台可靠运行的几种方法(nohup/&)和前后台运行程序切换
- linux下nohup命令——让程序在远程主机后台运行
- Linux执行shell脚本方式及区别&命令后台运行
- nohup命令在linux系统,控制jar包后台运行
- (nohup+开启fitnesse的命令+&)让fitnesse在linux可脱离终端在后台运行