1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > linux后台运行符号 nohup命令 输出重定向等使用方法

linux后台运行符号 nohup命令 输出重定向等使用方法

时间:2023-08-30 00:59:49

相关推荐

linux后台运行符号 nohup命令 输出重定向等使用方法

linux后台运行&符号、nohup命令、输出重定向等使用方法

/zjc/article/details/51484114

在命令最后加上&符号,表示让这个进程到后台去执行,这样立刻返回到提示符状态,我们可以接着做下面的事。如:command &

但此时如果这个进程有输出,还是会显示出来,这又会干扰到我们的shell窗口。所以可以考虑把标准输出重定向到某个文件中去,如:command >output &

现在清净了。但有时我们会发现后台运行的进程出错了,我们希望把错误信息也保存起来。那就用到了linux中默认定义两个变量:1指标准输出;2指错误输出,所以写成这样:command 1>output 2>error &

有时候只想保留一种,另外一个既不输出又不保存,俺就用到这个设备/dev/null,所以忽略错误输出:command 1>output 2>/dev/null &;忽略全部输出:command 1>/dev/nulll 2>/dev/null

1,2两种信息之间还可以重定向,所以这种:command 1>output 2>&1 & 表示错误输出也重定向回标准输出,即两种信息都保存到output中。那干嘛不写成command 1>output 2>output &呢?答案是这样不行,别看都输出到/dev/null可以,但如果写成相同的文件名会导致冲突,所以如果想同时保留只能是上面的写法;同理:忽略全部输出还可以写成:command >/dev/null 2>&1 &

这样的文件输出,每次运行会覆盖现有文件,如果我们希望追加而不是覆盖 ,那么就用>>符号,这样命令就是:command 1>>log 2>>lerror &

基本上参数的各种写法都在这里的,但有个问题。这种“后台”进程在shell一直打开的情况下是没有问题的,如果我们管了shell窗口甚至退出ssh登录或vnc登录,那么进程自动就结束了。所以如果想退出窗口乃至退出登录仍保持程序运行,再加上nohup,形如:nohup command 1>output 2>&1 &

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。