美文网首页
Job controll

Job controll

作者: 凝戈 | 来源:发表于2017-05-11 17:46 被阅读0次

    Linux Job Controll

    1. asdfas

      asdfasdf

      WechatIMG12.jpeg
    2. bash 只能够管理自己的工作(子程序)而不能管理其他bash的工作

    3. Jobf分为foreground和background两类

    4. background的Job的工作状态可以分为[暂停(stop)]和[运行(running)]

    操作

    1. 使命令在后台运行 [ & ]
    2. 将当前工作暂停,并使其在后台,也就是使一个工作状态变为后台暂停 [ctrl] - z
    3. 显示目前后台的工作状态[jobs -lrs]
      以上三条命令中,输出可能会出现+ -符号,其中+代表这是最近一个被放入后台的工作,-代表第二近被放入后台的工作,之前的工作不会再有其他提示
    4. 将后台的任务取出到前台进行执行: fg
      fg默认会取出最近放进的任务执行,也可以通过job %jobid来指定要取出的任务
    5. 改变后台运行命令的状态为running: bg
    6. 管理后台的工作:kill -signal %jobid
      kill -l列出当前可以指定的signal
      signal:
      -1 重新读取配置(类似reload)
      -2 与输入[crtl-c]效果相同
      -9 强制删除一个任务
      -15 以正常的方式终止一个任务

    离线任务的问题

    正常情况下,如果我们离开了terminal,那么即使是在放置在后台的任务,由于是此terminal的子任务,也会被停止,如果我们想要使其不停止,有以下几个方法
    
    • nohup
      由于用户注销或者网络断开,终端会收到HUP(hungup)信号从而关闭所有子进程,所以我们可以通过忽略该信号来避免任务被关闭
      用法:
      nohup [命令与参数]
      nohup [命令与参数]&
      nohup的输出默认会被重定向到nohup.txt中

    • setsid
      该命令可以使任务的ppid变为init进程的id从而不受当前任务的nohup信号影响

    • &
      用法: ([命令] &)
      通过加一个括号这种小技巧,可以使当前命令的ppid变为init进程的id

    • disown
      补救已经提交过的任务,使之不受HUP信号的影响
      disown -h %jobid使某个任务不受hup信号影响
      disown -ah/-rh使(全部/正在运行)的任务不受nohup的影响

    • screen
      该命令模拟了一个screen
      用法:
      用screen -dmS session name来建立一个处于断开模式下的会话(并指定其会话名)。
      用screen -list来列出所有会话。
      用screen -r session name来重新连接指定会话。
      用快捷键CTRL-a d来暂时断开当前会话。
      未使用screen的pstree
      root@pvcent107 ~]# ping www.google.com &
      [1] 9499
      [root@pvcent107 ~]# pstree -H 9499
      init─┬─Xvnc
      ├─acpid
      ├─atd
      ├─2*[sendmail]
      ├─sshd─┬─sshd───bash───pstree
      │ └─sshd───bash───ping

      使用screen的pstree
      [root@pvcent107 ~]# screen -r Urumchi
      [root@pvcent107 ~]# ping www.ibm.com &
      [1] 9488
      [root@pvcent107 ~]# pstree -H 9488
      init─┬─Xvnc
      ├─acpid
      ├─atd
      ├─screen───bash───ping
      ├─2*[sendmail]

    相关文章

      网友评论

          本文标题:Job controll

          本文链接:https://www.haomeiwen.com/subject/ojzizttx.html