zoukankan      html  css  js  c++  java
  • 用screen 在后台运行程序

    前言

    运维工作中经常,需要SSH远程登录到Linux 服务器,运行一些需要很长时间才能完成的任务,由于很多服务进行了基线调整,经常会出现任务没有执行完成会话就中断,任务就会被杀掉,一切半途而废了,这时,我们可以用screen命令解决这个问题

    介绍

    screen是一个可以在多个进程之间多路利用一个物理终端的窗口管理器。Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。

    安装

    本文以centos7为例

    yum install 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作业。
     

    使用方法

    常用

    #新建为name的窗口,并入到该窗口中
    screen -S name 
    #离开会话保留screen会话中的任务或程序
    Ctrl+a d(即按住Ctrl,依次再按a,d)
    #查看有哪些窗口正在运行
    screen -ls
    #进入某个窗口
    screen -r 窗口ID
    #杀死某个窗口(窗口外部)
    kill -9 窗口ID
    #杀死当前窗口(窗口内部)
    Ctrl a +k 
    #自动清除死去的窗口
    screen -wipe 
    

      

     
  • 相关阅读:
    RedHat中代理设置
    CentOS7主机名修改
    ELK+Filebeat+Kafka+ZooKeeper 构建海量日志分析平台
    Zookeeper+Kafka集群部署
    Centos7 中lvs DR配置
    linux抓包命令之tcpdump
    python调用ansible接口API执行命令
    LVS 实现负载均衡原理及安装配置详解
    Ansible 之Playbook
    Linux系统date时间设定
  • 原文地址:https://www.cnblogs.com/BigPig-Winnie/p/13219201.html
Copyright © 2011-2022 走看看