时间的管理,一次性计划任务,周期计划任务 1.时间的管理: date:用于查看和修改时间和日期 1)查看时间: 语法:date +%格式 案例: date +%F ##使用年-月-日的形式显示时间 date +%s ##从1970.1.1开始到现在的总时间,单位是秒 date +%H:%M ##显示小时:分钟,通常和%F配合使用 date --date="next days" +%F ##显示下一天的时间 date --date="last days" +%F ##显示上一天,days可以换为weeks date --date="3 days ago" ##3天前 date --date="3 days" ##3天后 2)修改时间: 语法:date MMDDhhmmccyy.ss ##月份日期小时分钟年.秒 案例: date --help |less -->q退出 date 021220102016.33

2.一次性计划任务:at 1)了解at: rpm -qf $(which at) ##查看属于哪个软件包 rpm -ql at ##查看at程序安装的所有软件 /etc/--->配置文件 /bin/或者/usr/sbin/-->命令 /etc/rc.d/init.d/ -->启动脚本 /usr/share/doc/ -->帮助和说明文档 /var/spool/程序名称 -->数据文件目录 at的相关文档介绍: /etc/at.deny ##设置拒绝用户使用at命令的配置文件 /etc/rc.d/init.d/atd ##atd的服务启动脚本,服务必须开启at计划任务才会执行 /usr/bin/at ##主要命令 /usr/bin/atq ##计划任务查询命令 /usr/bin/atrm ##删除计划任务的命令 /usr/share/doc/at-3.1.10/timespec ##at的时间设置 /usr/share/man/man1/at.1.gz ##man手册的文件,man1表示系统工具,man5表示配置文件案例,man8管理工具,如man1 man 1 at ##查看其帮助 /var/spool/at/spool ##本地存放计划任务的数据文件 2)at计划任务的设置: at 12:30 at>shutdown -s -t 0 ctrl+D提交 atq 查看 atrm 任务号 ## 删除

2.周期性的计划任务:crond 1)了解crond 软件:crontabs提供系统计划任务内容,cronie主程序负责计划任务的提供。 常用文件: /etc/cron.deny ##存放被禁止使用crond计划任务的用户 /etc/init.d/crond ##启动服务脚本,服务默认设置为开机启动,经常检查是否被修改:chkconfig --list crond /usr/bin/crontab ##计划任务设置命令 /var/spool/cron ##存放最生效计划任务的目录,每个的计划任务被存为一个单独的文件。 /etc/crontab ##环境配置文件 2)计划任务的设置 语法: 时间 命令 分 时 日 月 周 绝对路径的命令操作 1)时间的表示: 时间表示都以正常表示为准,如周(0-6;0=7周日) 特殊的时间表示:

  • :表示任意时间,可用用在除分钟为的其他区域
  • :表连续的时间 / :表示频率,如*/3放在日位置,表示每个3天 , :表示不连续时间,1,3,5

案例: 每周六的晚上02:30更新系统: crontab -e 按i 30 02 * * 6 /usr/bin/yum update :wq crontab -l ##查看是否成功 ls /var/spool/cron/root ##验证文件

每个季度1号01:30备份系统关键配置: crontab -e 30 01 1 */3 * /bin/tar -Jcf /opt/sys-bak-$(date +%F).tar.xz /boot /etc /usr/local/ :wq cat /var/spool/cron/root ##查看验证 补充: 1、禁用u01用户使用crontab: vi /etc/cron u01 :wq 验证: su - u01 crontab -e ##提示拒绝使用

2.去交互式编写计划任务:每天晚上10:30邮件通知管理员端口监听状态 echo "30 22 * * * /bin/netstat -utpln |/bin/mail -s "check hostname" 1732647099@qq.com" >>/var/spool/cron/root crontab -l