• nohup命令(Linux终端启动后台运行程序)


    1. nohup指令基本概念:

        nohup: 不挂断的运行,并没有后台运行功能,用nohup运行命令可以使命令永久执行下去,和用户终端没有关系,断开SSH不影响运行,&是后台运行.

    • nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。
    • nohup 是 no hang up 的缩写,就是不挂断的意思。
    • nohup命令:正在运的进程,在退出帐户时该进程也不会结束,可以使用nohup命令。该命令可以在退出帐户/关闭终端后继续运行进程。
    • 在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中。

    2. nohup指令基本使用格式:

    nohup command > myout.file 2>&1 &

        如上所示,在终端上运行上面形式的命令即可在关闭终端后继续运行后台指令command,myout.file功能主要用来保存command命令出现的error,出现错误或异常就会将相关信息保存在myout.file中。

        相关的数字及符号的意义代表如下所示:

    • 0 – stdin (standard input)
    • 1 – stdout (standard output)
    • 2 – stderr (standard error)
    • & – bgrun (run in back ground)

        上述指令重定向的意义在于,将stderr > stdout > myout.file.

    3. 实测结果:

    nohup python2 Sys_Status_MysqlSave.py > Mysql_out.log 2>&1 &

    接下来我们需要使用jobs指令(或者:ps -aux | grep python)来查看后台运行的程序:

    jobs

    注:只有在当前命令行中使用 nohup和& 时,jobs命令才能将它显示出来。如果将他们写到 .sh 脚本中,然后执行脚本,是显示不出来的。

    ps -aux | grep python

    Reference:

    nohup指令:https://www.cnblogs.com/jinxiao-pu/p/9131057.html

    ps以及jobs区别:https://blog.csdn.net/maihilton/article/details/82781897

  • 相关阅读:
    第三周作业
    #第四周作业
    第十二周作业
    第十一周作业
    第九周作业
    第八周作业
    2019第七周作业
    第三次实验报告及第五次课程总结
    第二次课程总结&学习总结
    第三周实验和学习总结
  • 原文地址:https://www.cnblogs.com/uestc-mm/p/11970578.html
Copyright © 2020-2023  润新知