云计算:计划任务,邮件发送

计划任务

corntab  -l        //列出计划任务

corntab  -e        //编写计划任务

corntab  -r        //删除所有的计划任务

corntab  -e

     分钟   时       日      月       周

        *        *        *        *        * 

        0       3        *        *        *        //每天的3点执行

      11      23      11      11       *        //每年11月11日23时11分执行

        *        8        *        *        1        //每周星期一的早上8点的每分钟执行

      30      12       12      *        2        //每月12号或者周二的12.30分执行

      */5        *        *        *        *        //每隔5分钟执行一次

        0        0     1,3,5    12      *        //每年的12月的1号,3号,5号的凌晨00:00分执行

    */30     */2        *        *        *        

计划任务练习题

题目 1

描述: 请写出一个crontab条目,每天凌晨2点执行脚本/home/user/backup.sh

0 2 * * */home/user/backup.sh


题目 2

描述: 写一个crontab条目,每周一到周五的上午8点和下午6点分别执行/home/user/update.sh

0 8,18 * * 1-5/home/user/update.sh

题目 3

描述: 写一个crontab条目,每月的第1天和第15天的中午12点执行/home/user/report.sh

0 12 1,15 * */home/user/report.sh

题目 4

描述: 写一个crontab条目,每周日凌晨3点重启Apache服务(假设命令是systemctl restart httpd)。

0 3 * * 7 systemctl restart httpd

题目 5

描述: 写一个crontab条目,每天的每个整点检查磁盘使用情况并将结果附加到/home/user/disk_usage.log文件中(假设检查磁盘使用的命令是df -h)。

0 * * * * df-h >>home/user/disk_usage.log

0 0-23 * * *

题目 6

描述: 写一个crontab条目,每10分钟执行一次/home/user/sync.sh

*/10 * * * */home/user/sync.sh

题目 7

描述: 写一个crontab条目,每个月的最后一天晚上11点59分执行脚本/home/user/monthly_cleanup.sh

59 23 * */home/user/monthly_cleanup.sh

题目 8

描述: 写一个crontab条目,每小时的第15分钟、第30分钟和第45分钟执行/home/user/quarter_hour_job.sh

15,30,45 * * * */home/user/quarter_hour_job.sh

题目 9

描述: 请写一个crontab条目,在每天的凌晨1点执行一次/home/user/daily_job.sh,并将标准输出和标准错误输出都重定向到/home/user/daily_job.log文件中。

0 1 * * */home/user/daily_job.log.sh &>//home/user/daily_job.log

题目 10

描述: 写一个crontab条目,每年1月1日凌晨0点执行脚本/home/user/new_year_job.sh


0 0 1 1 */home/user/new_year_job.sh

题目 11

0 4 * * * /usr/local/bin/cleanup.sh
​
每天的凌晨4点执行脚本/usr/local/bin/cleanup.sh

题目 12

30 17 * * 1-5 /home/user/scripts/backup.sh
​
星期一到星期五每天的下午5.30执行脚本/home/user/scripts/backup.sh

题目 13

15 10 * * * /home/user/check_disk.sh >> /home/user/disk_report.txt
​
每天的10.15分将/home/user/check_disk.sh追加到/home/user/disk_report.txt的文件下

题目 14

0 0 1 * * /home/user/monthly_task.sh
​
每月的1号的凌晨00:00:00执行脚本/home/user/monthly_task.sh

题目 15

*/10 * * * * /home/user/sync_files.sh
​
每隔10分钟执行一次脚本/home/user/sync_files.sh

题目 16

0 3 * * 0 /usr/sbin/logrotate
​
每周日的凌晨3点执行脚本/usr/sbin/logrotate

题目 17

45 23 31 12 * /home/user/new_year_eve.sh
​
每年的12月31号23点45分执行脚本/home/user/new_year_eve.sh

题目 18

0 */6 * * * /home/user/update_system.sh
​
每天每隔6小时执行脚本/home/user/update_system.sh
​
* */6 * * * /home/user/update_system.sh
每隔6小时的第一个小时每分钟执行

题目 19

30 6 1 * * /home/user/monthly_report.sh

每月的1号6点30分 执行脚本/home/user/monthly_report.sh

题目 20

5 0 * * 2 /home/user/weekly_backup.sh

每周二的凌晨00:05 执行脚本/home/user/weekly_backup.sh

题目 21

0 4 * * 1-5 /usr/local/bin/cleanup.sh > /dev/null 2>&1

每周一到周五的凌晨4点 /usr/local/bin/cleanup.sh > /dev/null 2>&1

题目 22

30 17 * * 1-5 /home/user/scripts/backup.sh && /home/user/scripts/log_success.sh

每周一到周五的下午5点30 /home/user/scripts/backup.sh && /home/user/scripts/log_success.sh

题目 23

15 10 1-7 * 1 /home/user/check_disk.sh >> /home/user/disk_report.txt 2>&1

每月的1-7号或者周一早上10点15分去执行  /home/user/check_disk.sh >> /home/user/disk_report.txt 2>&1

题目 24

0 0 1 */2 * /home/user/bimonthly_task.sh | mail -s "Bimonthly Task Report" user@example.com


每隔2个月的1号凌晨00:00

题目 25

*/10 8-18 * * 1-5 /home/user/sync_files.sh

周一到周五的早上8点到下午18点每隔10分钟执行一次/home/user/sync_files.sh

题目 26

0 3 * * 0 [ -x /usr/sbin/logrotate ] && /usr/sbin/logrotate /etc/logrotate.conf

每周日的凌晨3点

题目 27

45 23 31 12 * /home/user/new_year_eve.sh && /home/user/send_notification.sh

每年12月31号23点45分

题目 28

0 */6 * * * /home/user/update_system.sh | tee -a /home/user/update.log

每天每隔6小时执行一次

题目 29

30 6 1 * * /home/user/monthly_report.sh > /home/user/reports/$(date +\%Y\%m\%d)_report.txt

每月的1号早上6.30 

题目 30

5 0 * * 2 /home/user/weekly_backup.sh || echo "Backup failed" | mail -s "Weekly Backup Failure" user@example.com

每周二的凌晨00:05分

cmd1 && cmd2 :cmd1执行成功则执行cmd2

cmd1 || cmd2 上一个命令失败了则执行下一个命令

date +%-d -d tomorrow date +%d -d tomorrow [[ date -d +1day | awk '{print $3}' -eq 1 ]]&& echo "今天是这 个月的最后一天"

写个小脚本

防火墙是否打开

systemctl status firewalld && "防火墙已打开"  ||  "防火墙已关闭"

systemctl status firewalld &>/dev/null && echo "防火墙已打开" || echo "防火墙已关闭"

vim a.sh

把脚本写到a.sh

直接运行a.sh  

邮件发送 

邮件发送:
    yum -y install mailx
    vim /etc/mail.rc
        set from=19991820903@163.com
        set smtp=smtp.163.com
        set smtp-auth-user=19991820903@163.com
        set smtp-auth-password=GSLTKOHJSRNPAUBV
        set smtp-auth=login
  

   

    echo "邮件内容" | mail -s "邮件主题" -a 附件(路径) 945225432@qq.com 
    
    mail -s "邮件主题" -a 附件(路径) 945225432@qq.com </etc/passwd

  • 16
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值