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文件中。

  • 相关阅读:
    Spring Boot 2.1.10 学习笔记(2)
    Spring Boot 2.1.10 学习笔记(1)
    Win10 下载与激活 MSDN
    Java JDK 1.8 下载及其版本说明 8u202(最后一个免费版)
    shell函数开发意见优化系统脚本
    php大文件下载支持断点续传
    xunsearch使用笔记
    微信使用的curl方法
    php执行sql语句打印结果
    二维数组排序:array_orderby(php官网评论)
  • 原文地址:https://www.cnblogs.com/xiaofeng91/p/13207642.html
Copyright © 2011-2022 走看看