美文网首页我用 LinuxLinuxLinux学习之路
Linux多重视窗管理命令screen

Linux多重视窗管理命令screen

作者: Sui_Xin | 来源:发表于2018-11-25 11:42 被阅读4次

    本文首发于我的个人博客:Suixin's Blog
    原文: https://suixinblog.cn/2018/11/screen.html  作者: Suixin

    在日常的编码中肯定需要登录到远程Linux服务器,经常需要在上面运行一些需要很长时间才能完成的任务,如:传输文件、跑爬虫代码等,需要保证退出服务器的连接,该任务也不会终止掉。使用nohup命令已经可以完成一些较为简单的任务(nohup:在Linux服务器后台跑程序),但真正的多会话管理还是要用到screen命令。
    一般的Linux系统都自带screen命令,所以无需手动安装。

    常用参数

    • -S:后加作业名称新建一个screen作业;
    • -ls-list:列出目前的所有screen作业;
    • -d:后加作业名称远程使该作业离线;
    • -r:后加作业名称恢复该离线的作业;
    • -wipe:删除已经无法使用的作业。

    快捷键

    进入一个screen session后,可能你开始跑一些程序,这时不能在命令行输入任何东西,就需要使用快捷键来操作。这里所有的快捷键都是以Ctrl+A开头的(Mac也是⌃+A而不是⌘+A)。

    • Ctrl+A+D:detach当前session,会将当前的session任务放到后台执行,回到还没进入当前session的状态,即使断开远程连接session也不会中断(最常用);
    • Ctrl+A+T:在底线显示当前时间以及登入时间;
    • Ctrl+A+K:强行关闭当前的window;
    • Ctrl+A+W:显示所有window列表;
    • Ctrl+A+X:锁定当前window,需要用用户密码解锁。

    经典使用方式

    # 新建suixinPython作业
    screen -S suixinPython
    # 在新作业中运行长时间的代码
    python test.py
    # 使用快捷键detach当前session
    ⌃+A+D
    # 退出ssh连接
    exit
    # 重新链接服务器
    ssh root@……
    # 恢复suixinPython会话
    screen -r suixinPython
    

    参考

    https://www.cnblogs.com/mchina/archive/2013/01/30/2880680.html

    相关文章

      网友评论

        本文标题:Linux多重视窗管理命令screen

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