前提

最近写了个Python脚本想要在服务器上跑,但是我发现只要ssh断开脚本马上就会关闭,所有就有了screen命令.

Screen使用场景

在Linux中,我们经常会做一些关于数据的操作(备份、传输、压缩等)或是要在后台持续的运行一些程序。由于,工作的数据量很大或者工作要持续很长的时间,我们就必须保证这个终端的启动,一旦终端关闭了,它所运行的进程也会关闭,我们所做的工作就可能前功尽弃。但是,即使我们不主动的关闭终端,终端有的时候也会应为一些原因(网络、锁屏等)而中断,导致我们的工作进度清零。

安装Screen

  • 检查主机是否有screen
    • type screen
  • 安装screen
    • yum install screen

      常用Screen命令(注意大小写)

  • 创建screen会话
    • screen -S 名字
  • 退出screen会话
    • ctrl a+d
  • 进入指定的screen会话
    • screen -r 名字
  • 查看所有的screen会话
    • screen -ls
  • 删除screen会话
    • screen -X -S 名字 quit

      Screen参数

      -A  将所有的视窗都调整为目前终端机的大小。
      -d <作业名称>  将指定的screen作业离线。
      -h <行数>  指定视窗的缓冲区行数。
      -m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。
      -r <作业名称>  恢复离线的screen作业。
      -R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
      -s  指定建立新视窗时,所要执行的shell。
      -S <作业名称>  指定screen作业的名称。
      -v  显示版本信息。
      -x  恢复之前离线的screen作业。
      -ls或--list  显示目前所有的screen作业。
      -wipe  检查目前所有的screen作业,并删除已经无法使用的screen作业。
Last modification:August 31st, 2020 at 01:38 pm
如果觉得我的文章对你有用,请随意赞赏