linux screen 命令
(1)连接服务器,在服务器终端安装screen
apt install screen
(2)创建screen窗口,mm为窗口名。就可以在这里运行你的命令了
此时该窗口的状态变为 Attached
screen -S mm
(3)查看已建的screen窗口,会出现创建的窗口的名称及id
screen -ls
(4)退出该窗口,但窗口里的命令仍在运行:
Ctrl + a +d
此时该窗口的状态变为 Detached
(5)重新连接该窗口,先screen -ls查看该窗口的id,再运行screen -r id,12344即为对应窗口的id。执行后可跳回退出该窗口时运行的命令。
screen -ls
screen -r 12344
如果连不上,可能是其他人连了,先把他踢了再连。
screen -D -r <session-id>
(6)清除dead状态的窗口
如果由于某种原因其中一个会话死掉了(例如人为杀掉该会话),这时-ls会显示该会话为dead状态。使用-wipe命令清除该会话
screen -wipe
(7)关闭和杀死窗口
正常情况下,当你退出一个窗口中最后一个程序(通常是bash)后,这个窗口就关闭了。
另一个关闭窗口的方法是使用Ctrl + a + k,这个快捷键杀死当前的窗口,同时也将杀死这个窗口中正在运行的进程。
除了依次退出/杀死当前Screen会话中所有窗口这种方法之外,还可以使用快捷键Ctrl + a :,然后输入quit命令退出Screen会话。需要注意的是,这样退出会杀死所有窗口并退出其中运行的所有程序。
也可以在该窗口终端输入
kill -9 id
终止窗口对应任务的运行,同时杀死该窗口。
kill -9 12344
也可以在该窗口终端输入exit ,就可以彻底删除该窗口以及窗口内的作业。
exit