screen命令

若是想要后台一直运行一个程序【即使远程窗口关闭】,我觉这个命令是极佳的选择,比起nohub,确实比较优秀。现在讲解一下我的领悟。

screen命令,实际上,他的作用可以形象的描述为:就像windows打开一个窗口,在窗口内运行一个任务,每个窗口的任务各不冲突,它可以保持任务在远程连接断开之后,依然在保持执行。这是一个极大的优点。

  1. 创建新的任务screen
screen -S windowName

执行命令之后,相当与到了一个有标识的命令行,当前的所有操作,都是在这个命令行里面执行;

  1. 回到主screen(让某个screen后台运行)
ctrl+a+d
  1. 列出存在的screen
screen -ls

执行后会列出已经存在的screen,一般是格式是:id.windowNameid是系统自己分配的,windowName是创建时候自己命名的。后面有状态detach(离线)或者attach(在线)或者dead(死进程),这里的离线在线代表的是是否有人再使用,如果有时候在有个screen中,由于网络原因断开各种原因,会导致下次进来,screen状态是 attach,这个时候要回到该screen,就必须让其先离线【参照5】,然后在进入【参照4】。如果是状态为dead,那么用screen -wipe id清理。

  1. 回到某个后台运行的screen
screen -r id
  1. 让某个screen离线
screen -d id
  1. 结束(关闭)某个screen
    首先进入该screen【参照4】,然后结束里面的程序,命令行输入:exit即可

你可能感兴趣的:(screen命令)