关终端而任务不停,screen常见用法

文章来自微信公众号“科文路”,欢迎关注、互动。转发须注明出处。

有没有方法能让终端关闭的同时,终端里的远程服务器上的任务还在继续运行呢?

现在程序员的开发模式一般是本地开 ssh 连接远程服务器,在远程服务器上工作。但这种模式多多少少会带来一些问题。

比如,下班前半小时,你开始在服务器上编译一个大项目,例如 LLVM 之类的。而这种项目一般要花费很长的时间,要是等待他编完就要坐那儿等不知道多久。或者索性干脆断线撤退。

怎样做到关机或关端口的同时,里面的远程任务持续运行呢?

起码有两种方法:一种是使用 tmux;一种是本文介绍的 screen 命令。

screen 像是开启了一个不受终端关闭影响的窗口,用以运行程序。所以关闭中断后,任务仍能保持运行。

用之前先安装一下 screen,然后照下面的常用用法使用~

常用用法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 新建 session 运行 prog,结束后关闭
screen prog
# 关闭当前 window
ctrl + a 松开后按 k
# 新建一个叫 yourname 的 session
screen -S yourname
# 列出当前所有 session
screen -ls
# 回到 yourname 这个 session
screen -r yourname
# 远程 detach 某个 session****
screen -d yourname
# 结束当前 session 并回到 yourname 这个 session
screen -d -r yourname

这应该就能解决大多数问题了,其余的请自行搜索。

都看到这儿了,不如关注每日推送的“科文路”、互动起来~

关终端而任务不停,screen常见用法

https://xlindo.com/kewenlu2022/posts/1bc46c87/

Author

xlindo

Posted on

2022-03-27

Updated on

2023-05-10

Licensed under

Comments