zoukankan      html  css  js  c++  java
  • 进程后台执行和指定日志文件输出

    对于shell脚本执行,没有任何报错,也没有找到看到任何日志的情况,运用这种执行日志重定向输出,可以判断执行出错位置

    1、linux中的 &符号

    在Linux中,当在前台运行某个作业时,终端被该作业占据;而在后台运行作业时,它不会占据终端。
    可以使用&命令把作业放到后台执行。实际上,这样是将命令放入到一个作业队列中了:

    $ ./test.sh &
    [1] 17208

    $ jobs -l
    [1]+ 17208 Running ./test.sh &
    在后台运行作业时要当心:需要用户交互的命令不要放在后台执行,因为这样你的机器就会在那里傻等。

    不过,作业在后台运行一样会将结果输出到屏幕上,干扰你的工作。
    如果放在后台运行的作业会产生大量的输出,最好使用下面的方法把它的输出重定向到某个文件中:
    command >out.file 2>&1 &
    在上面的例子中,2>&1表示所有的标准输出和错误输出都将被重定向到一个叫做out.file 的文件中。
    当你成功地提交进程以后,就会显示出一个进程号,可以用它来监控该进程,或杀死它。

    2、 退出账号终端窗口后,还需进程执行,用nohup conmmand &
    如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令
    该命令可以在你退出帐户之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)。
    该命令的一般形式为: nohup conmmand &

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

  • 相关阅读:
    [HAOI2015]按位或——Min-Max容斥+FWT
    HDU 4773 Problem of Apollonius——圆反演
    类欧几里得小结
    线性规划(单纯形法)知识整理
    奇怪的数学题(51nod1847)——min_25筛+杜教筛+第二类斯特林数
    CSP-S 2019 游记
    2019.11.11~2019.11.12考试总结
    2019.11.6~2019.11.7考试总结
    1019.11.1~2019.11.2考试总结
    Final-阶段站立会议4
  • 原文地址:https://www.cnblogs.com/xiaofeng91/p/13207642.html
Copyright © 2011-2022 走看看