zoukankan      html  css  js  c++  java
  • 后台运行进程的两种方式

      第一种方式:命令最后加&

           1. 命令执行后显示:后台程序序列号和进程号

           2.若终端被关闭,则带&的后台命令也一同关闭

           3. 可以使用ps -aux查看

           4.示例:tail -f catalina.out &

      第二种方式:nohup 命令 &  ; 注:nohup:no hang up  不挂起继续运行

           1.终端被关闭,后台进程继续运行

           2.示例:nohup tail -f catalina.out  &

        

      上图中后台运行的pid=5307,日志输出到当前目录下的nohup.out中

          3.  查看进程可以使用命令:ps -ef | grep 进程号

          4. 可以通过jobs命令查看:

             

         5. 将后台的程序调到前台运行:fg  %n   其中n代表

             列如:fg %2

           

         6.将前端运行的程序转入后台运行

           a. 命令:crtl +z  (将程序暂停运行)       注意:crtl+c是关闭运行程序。

          

           b. 命令:bg %2

            

         7.遇到的问题:

          在实际操作中,我使用第二种方式,关闭终端后,后台运行的程序也同时关闭了。最后在一篇文章中找到原因以及解决的方法:

          问题原因:我是点击关闭按钮关闭终端的,所以这时候会断掉该命令所对应的session,导致nohup对应的进程被通知需要一起shutdown

          解决方法:正确关闭终端的方法:当shell中提示了nohup成功后还需要按终端上键盘任意键退回到shell输入命令窗口,然后通过在shell中输入exit来退出终端

          参考文档:http://www.cnblogs.com/allenblogs/archive/2011/05/19/2051136.html

  • 相关阅读:
    聊一聊HTML <pre>标签
    [Effective JavaScript 笔记]第20条:使用call方法自定义接收者来调用方法
    数据库的权限管理
    完整性约束
    MYSQL
    Python并发编程之协程
    python并发编程之多线程
    python并发编程之多进程
    进程
    网络编程之socket的运用
  • 原文地址:https://www.cnblogs.com/homehbn/p/5867576.html
Copyright © 2011-2022 走看看