linux nohup

来源:互联网 发布:tensorflow 股票 编辑:程序博客网 时间:2024/06/07 00:54

      nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思。

如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:

  nohup command > myout.file2>&1 &
在上面的例子中,输出被重定向到myout.file文件中。2>&1:把标准错误(2)重定向到标准输出中(1),而标准输出又导入文件output里面,至于为什么需要将标准错误重定向到标准输出的原因,那就归结为标准错误没有缓冲区,而stdout有。 这就会导致 >output 2>output 文件output被两次打开,而stdout和stderr将会竞争覆盖

  > output  这其中的>就是标准输出符号,其实是 1>output 的缩写
2> output 这里的2>就是将标准错误输出到output文件里。而0< 则是标准输入了。


使用 jobs 查看所有nohup执行到后台任务。每个程序前面都有个编号(n),
使用 fg %n 将这个程序掉回前台执行。要终止程序,只需ctrl + c 即可退出程序。

jobs   只能查看当前窗口的后台进程,如果关闭了后台执行脚本的窗口,该命令失效,这个时候就只能用到下面的命令查看

ps -ef    可以查看主机所有运行的进程   ps -ef | grep 过滤条件



0 0