shell编程之 远程会话和计划任务

shell编程

远程会话

  • 场景:系统管理员远程连接服务器,做耗时操作时只能干等,因为端口连接服务就会停止。
  • screen:使用此命令可以优雅的解决此问题(保证按时下班)
  • 安装:sudo apt-get install screen
  • 使用:
    查看系统会话:
        screen -ls
    创建新的会话:
        screen [-S 会话名称]
    恢复指定会话:
        screen -r 会话编号|会话名称
    会话快捷操作:
        ctrl + a + d            # 暂时离开会话
        ctrl + a + w            # 查看会话窗口,一个会话可以有多个窗口,带*的是当前窗口
        ctrl + a + c            # 创建新的窗口
        ctrl + a + p            # 切换到上一个窗口
        ctrl + a + n            # 切换到下一个窗口
        ctrl + a + k            # 关闭当前窗口,ctrl+a松手时按下k,会出现提示
    退出会话
        ctrl + a + d            # 暂时退出会话,会话不会结束
        exit                    # 关闭当前窗口,若是会话的最后一个窗口,则退出会话
        ctrl + a + k            # 功能同上
    清理异常会话:状态显示dead
        screen -wipe
    杀死指定会话:
        screen -S 会话编号|会话名称 -X quit

计划任务

  • 说明:就是让计算机在指定的时间做指定的事情
  • 配置说明:
    计划任务表中的每一行表示一个任务,基本格式:分 时 天 月 星期 用户 命令
        分:0~59
        时:0~23
        天:1~31
        月:1~12
        星期:0~6,表示周日~周六,也可以写英文
        用户:一般时root用户安排任务,需要指定哪个用户
    具体说明:
        *:表示每当前单位,如:出现在分的位置,表示每分钟
        -:表示连续的区间,如:出现在天的位置,1-4表示月的1,2,3,4的几天
        /:表示每指定单位,如:出现在时的位置,*/3表示每3个小时
        ,:表示并行的值,如:出现在星期的位置,1,3,5表示周一、周三、周五
        #:表示注释
    示例演示:
        * * * * * root echo 123 >> /home/lijie/log.txt
  • 添加计划任务
    • 修改配置文件:/etc/crontab,一般用于超级用户给其他用户指定任务,必须指定用户
    • 使用crontab命令可以给当前用户添加计划任务
      • 常用选项
      选项 说明
      -l 查看
      -e 编辑
      -r 删除
      -i 给出确认提示信息,经常结合删除使用
      • 计划任务会保存在var/spool/cron/crontabs/用户名目录下
      • 示例:* * * * * date >> /home/lijie/log.txt
      • date:日期显示,date '+%Y-%m-%d %H:$M:%S'
分类: Python编程

发表评论 X

电子邮件地址不会被公开。 必填项已用*标注

姓名不能为空
填写正确的email