screen简易用法总结-泓源视野

screen简易用法总结

screen 是 Linux 下的常用命令,用于创建会话,可以将会话切换到后台运行,方便继续其它操作。平时 SSH 连接服务器,如果遇到超时或意外断线,正在运行任务可能会中断,用 screen 可以完美解決。

screen是一个非常实用的工具,提供从单个 SSH 会话(或本地会话)中使用多个 shell 窗口(会话)的能力。当会话被分离或网络中断时,screen 各会话中启动的进程仍将运行,而且你可以随时重新连接到 某个指定screen 会话查看情况。

创建:screen -S ###

查看有多少会话:screen -ls

恢复:screen -r ###

如果-ls后显示attache则不能恢复需要:先screen -d ###

再screen -r ###

删除 screen -S ### -X quit

启动一个screen会话

可以简单的在命令行里直接输入screen,这样便启动并进入到一个screen会话了。

如果你想给这个screen会话做个标记,也就是给它一个名称,可以用screen -S ssesion_name替换上述的screen,这样就启动并进入到一个名为session_name的screen会话了。

在screen会话执行命令

进入screen会话后,便可在这个screen会话中执行一些你想执行的命令了,比如升级系统apt update && apt upgrade -y

分离screen会话

如果你的命令执行时间比较长,比如上述的升级系统操作,而你又不想等待,想干点别的事。

这个时候你可以分离这个会话,让它在后台运行,按Ctrl + a + d即可分离当前会话,回到本地会话。

重返screen会话

当你觉得时间差不多了,想回到之前升级系统那个会话看看运行结果或运行情况,你可以输入screen -r返回之前的会话,前提是你只创建了一个screen会话,如果有多个,你还得知道会话的pid或者name。

可以输入screen -ls查看当前所有的screen会话,例如:

1
2
3
4
5
6
7
screen -ls
There are screens on:
7880.session (Detached)
7934.session2 (Detached)
7907.session1 (Detached)
3 Sockets in /var/run/screen/S-root.
注意:screen -r name   (必须全名比如:名称.sessions)

其中7880,7934,7907为各screen会话对应的pid,而session,session1,session2则为它们对应的name。

可以指定pid screen -r 7934或指定name screen -r -S session2回到指定的screen会话中。

screen简易用法总结插图

结束screen会话

这个很简单,在screen会话中输入exit或者按Ctrl + d即可结束当前会话。

用途说明命令示例
创建会话并进入screen -S 会话名称
恢复指定会话screen -r 会话名称
列出所有会话screen -ls
删除指定会话screen -S 会话名称 -X quit
删除所有会话killall screen
清除 dead 状态会话(因某些原因已结束的会话)screen -wipe
下面命令在会话中使用
退出当前会话窗口(不会影响进程继续运行)按 Ctrl+a 组合键,接着再按 d 键
创建新的终端会话按 Ctrl+a 组合键,接着再按 c 键
强制关闭当前会话并结束里面的进程按 Ctrl+a 组合键,接着再按 k 键
显示所有会话列表按 Ctrl+a 组合键,接着再按 w 键
切换其它会话窗口(编号 0-9)按 Ctrl+a 组合键,接着再按 0-9 数字键
锁定当前会话,恢复需验证用户密码按 Ctrl+a 组合键,接着再按 x 键
显示更多选项帮助信息按 Ctrl+a 组合键,接着再按 ? 键
本文由 泓源视野 作者:admin 发表,其版权均为 泓源视野 所有,文章内容系作者个人观点,不代表 泓源视野 对观点赞同或支持。如需转载,请注明文章来源。
8

发表评论

Protected with IP Blacklist CloudIP Blacklist Cloud
您是第8233367 位访客, 您的IP是:[52.14.221.113]