当前位置: 主页 > 系统 >

linux后台运行程序并终端输出重定向

时间:2019-10-16  作者:haden   点击:
【摘要】nohup nohup的作用是让提交的命令忽略 hangup 信号。 格式:nohup command args eg: nohup ./main /tmp/webcrawler.log 21 mian 是自己服务器上可以运行的go 二进制文件, /tmp//webcrawler.log 是将标准输出重定向

nohup ./main > file.out  2>&1 &

> file.out 代表将command运行结果重定向到当前目录下的file.out文件中(如果要每次运行的结果追加到file.out后面,可以用>>而不是>)。

2 >&1表示将标准错误输出cerr的所有输出也都重定向到标准输出cout中,这样file.out中就会记录command命令运行过程中所有标准输出。

最后一个&表示后台运行该command。


*
’>’’>>’的区别为前都会清原来文件中的内容再写入,后者会增加在文件的后面而不清原来的内容。

如果对一个程序中的print等输出进行重定向,则应该在printf后面加下输出的刷新fflush(stdout),不然输出不会马上写入到重定向的文件里,因为重定向后输出只有满4K之后才会写入一次文件中

 


nohup

nohup的作用是让提交的命令忽略 hangup 信号。
      格式:nohup command args
 
eg:  nohup ./main > /tmp/webcrawler.log  2>&1 &
        mian 是自己服务器上可以运行的go 二进制文件,>  /tmp//webcrawler.log 是将标准输出重定向到此目录下的webcrawler.log文件中,2>&1表示标准错误也输出到文件中,最后一个 & 表示加到后台(脱离终端会终止,加上nohup则不会)。
顶一下
(0)
0%
踩一下
(0)
0%
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
验证码: 点击我更换图片

推荐内容