• Linux计划任务与压缩归档


    计划任务分为两种形式

    第一种:定时性的:也就是例行,每隔一定的周期就要重复来做这个任务。

    第二种:突发性的:临时决定,只执行一次的任务。

    用到的命令有两个

    at:它是一个可以处理仅执行一次的任务就结束的指令

    crontab:它是会把你指定的工作或任务,比如脚本,按照你设定的周期一直循环下去。

    一次性计划任务

    at的的用法:它是结合时间来设置,需要用到语法

    1、首先要下载at程序

    2、其次要启动atd服务(什么是atd服务)

    (启动atd服务)

    systemctl restart atd

    (查看进程是否启动)

    ps aux | grep atd

    3、设置计划任务 at

    要设定的时间,如果是上午时间,数字后面需要加am,晚上则不需要。

    at 

    输入要执行的命令

    at> 

    保存

    at > ctrl+d

    删除

    ctrl+删除键

    查看at计划任务

    at -l
    
    atq

    4、删除计划  atrm

    首先要查看计划任务,获取最前面的编号,而后atrm 编号,即可删除,在查看计划任务就没有了。

    5、at计划任务特殊写法

    在某天: at 几时:几分  年-月-日

    在多少分钟后执行: at now +数字min

    明天下午几点执行:at 时间 tomorrow

    在几天以后的下午几点执行: at 时间 pm +数字 days

    crontab定时任务的使用(/etc/crontab)

    选项:

    列出指定用户的计划任务列表

    -l 

    编辑指定用户的加护任务列表

    -e 

    指定的用户名,如果不指定,则表示当前用户

    -u 

    删除指定用户的计划任务表

    -r 

    编写计划任务:

    语法格式:以行为单位,每行为一个计划。

    需要编写的内容:分 时 日 月 周  (顺序不能出错)

    执行的命令要写绝对路径

    命令的格式为

    0 0 * * * 要执行的命令的绝对路径

    编写格式:

    进入编写模式

    crontab -e

    先编写5个*

    比如有多个任务,但有一个不想执行,可以添加#注释掉,不执行

    存放路径

    /var/spool/cron/root

    如果指定用户的话,要查看的时候加用户名

    *****什么都是代替的话,代表每时每刻,用tail -f监控

    比如说每隔5天在上午8点至下午5点的第30分钟和45分钟执行重启命令

    30,45 8-17/5 * * reboot

    取值范围:

    周:0-7, 0和7表示星期日(星期天)

    四个符号:

    *:取值范围中的每一个数字

    -:做连续区间的表达式,比如想表示1~7,则可以写成1-7

    /:没多少个/次,比如说每10分钟一次,*/10

    ,:表示多个取值,比如想在1点,2点,6点执行,1,2,6

    压缩归档:

    掌握tar命令的常用选项:

    c:创建一个新的tar文件。

    t:列出tar文件中目录的内容。

    x:从tar文件中抽取文件。

    f:指定归档文件或磁带(也可能是软盘)设备(一般都要选)。

    v:显示所打包的文件的详细信息,v是verbose的第1个字母。

    z:使用gzip压缩算法来压缩打包后的文件。

    j:使用bzip2压缩算法来压缩打包后的文件(文件压缩的更小)

    常用选项组合:

    压缩归档

    czvf

    解压

    xzvf

    步骤:首先创建一个目录,而后进入这个目录,然后在这个目录里创建文件,{1..10}.txt,而后进行压缩

    压缩的命令格式

    tar czvf 刚创建的目录名字.tar.gz  ./*

    ./表示当前目录下

    解压:首先删除1至10的文件,而后查看一下,目录里只剩了一个压缩包

    而后使用指令

    tar xzvf 创建的目录名字.tar.gz 

    指定解压到哪个目录

    -C 
     tar xzvf 创建的目录名字.tar.gz  -C 目录名字

    常用的一些压缩包格式

    zip

    bz

    bz2

    周计划任务压缩归档的结合

    怎么以时间命名一个文件

    是执行一个命令

    ``

    touch  `date “+%F”`

    $() #也是执行命令

    
    

    touch  $(date “+%F”)

    
    

    #在crontab中的格式为

    touch  $(date “+\%F”)

    
    

    tar czvf /tmp/`date "+%F"`.tar.gz /etc/*

    
    

    #将etc目录下的所有文件备份到tmp目录下并以年月日命名

    
    

    #&&是连续执行命令,意思是执行成功前一个在执行后一个!

  • 相关阅读:
    cygwin下安装scws
    atitit.提升软件开发的生产力关健点-------大型开发工具最关健
    atitit。mssql sql server 转换mysql 及 分页sql ast的搭建
    atitit.手动配置列表文件的选择and 数据的层次结构 attilax总结最佳实践--yaml
    atitit.获取connection hibernate4
    atitit.新增编辑功能 跟orm的实现 attilax p31
    atitit.自动生成数据库结构脚本,或者更换数据库,基于hibernate4
    atitit.Windows Server 2003 2008 2012系统的新特性 attilax 总结
    atitit.orm的缺点与orm框架市场占有率,选型attilax总结
    atitit。解决 No suitable Log constructor。。NoClassDefFoundError: org/apache/log4j/Category 找不到类的
  • 原文地址:https://www.cnblogs.com/shuaiyin/p/10869212.html
Copyright © 2020-2023  润新知