例行性工作crontab练习题

练习

  1. 请在5分钟后关闭系统中所有属于tab用户的进程,并用日志记录任务执行时间

    基础知识:
    [root@localhost ~]# echo "`date '+%F %R'` pkill tab finished"
    2024-07-17 15:57 pkill tab finished
    ​
    logger 123 
    将123写到/var/log/messages
    #法一:
    at now +5 minutes
    pkill -u tab   
    echo "[`date '+%F %R'`]: pkill tab finished" >> /root/tab
    #法二
    logger 'pkill tab finished'

  2. 请在7月和9月的每个周一凌晨4点清理系统中的tmp临时目录

    crontab -e 
    0 4 * 7,9 1 rm -rf /tmp/*
  3. 建立临时目录/tab_tmp 确保目录的所属组为 tab,并要保证在此目录中建立的所有文件都属于这个组

    此目录只有超过1天以上的文件才能被清理,确保这个目录可以被系统中的所有用户读写

        基础知识: -mtime -2 两台以内 2 三天前到两天前 +2 两天以前

#查找一天以上的文件
find /tab_tmp -mtime +1 -exec rm -rf {} \;
mkdir /tab_tmp
chown tab /tab_tmp
chmod 2777 /tab_tmp
#法二
vim /etc/tmpfiles.d/test.conf
d /tab_tmp 2777  root tab 1d    
# 创建一个所属者是root,所属组是tab,权限是2777的目录文件,路径为/tab_tmp,如果执行systemd-tmpfiles --clean test.conf的时候会删除一天以前的文件  
#如果是一分钟 1m   1秒  1s

systemd-tmpfiles --create test.conf
[root@localhost tab_tmp]# systemd-tmpfiles --create test.conf
[root@localhost tab_tmp]# touch 2
[root@localhost tab_tmp]# ll
total 0
-rw-r--r--. 1 root root 0 Jul 17 16:43 1
-rw-r--r--. 1 root tab  0 Jul 17 16:44 2
[root@localhost tab_tmp]# systemd-tmpfiles --clean test.conf
[root@localhost tab_tmp]# ll
total 0
-rw-r--r--. 1 root tab 0 Jul 17 16:44 2

   4. 指定清理任务确保在/tab_tmp中存在超过1天的文件

  crontab -e

  * * * * * systemd-tmpfiles --clean test.conf

 

  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
系统根据B/S,即所谓的电脑浏览器/网络服务器方式,运用Java技术,挑选MySQL作为后台系统。系统主要包含对客服聊天管理、字典表管理、公告信息管理、金融工具管理、金融工具收藏管理、金融工具银行卡管理、借款管理、理财产品管理、理财产品收藏管理、理财产品银行卡管理、理财银行卡信息管理、银行卡管理、存款管理、银行卡记录管理、取款管理、转账管理、用户管理、员工管理等功能模块。 文中重点介绍了银行管理的专业技术发展背景和发展状况,随后遵照软件传统式研发流程,最先挑选适用思维和语言软件开发平台,依据需求分析报告模块和设计数据库结构,再根据系统功能模块的设计制作系统功能模块图、流程表和E-R图。随后设计架构以及编写代码,并实现系统能模块。最终基本完成系统检测和功能测试。结果显示,该系统能够实现所需要的作用,工作状态没有明显缺陷。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。进入银行卡列表,管理员可以进行查看列表、模糊搜索以及相关维护等操作。用户进入系统可以查看公告和模糊搜索公告信息、也可以进行公告维护操作。理财产品管理页面,管理员可以进行查看列表、模糊搜索以及相关维护等操作。产品类型管理页面,此页面提供给管理员的功能有:新增产品类型,修改产品类型,删除产品类型。
要在 crontab 中判断工作日,你可以使用 shell 脚本来实现。以下是一个示例脚本,用于判断当前日期是否为工作日: ```shell #!/bin/bash # 获取当前日期,格式为年-月-日 current_date=$(date +%Y-%m-%d) # 获取当前日期是星期几(1-7,1 表示星期一,7 表示星期日) day_of_week=$(date +%u) # 判断是否为周末(星期六或星期日) if [ "$day_of_week" -eq 6 ] || [ "$day_of_week" -eq 7 ]; then echo "Today is a weekend." else echo "Today is a workday." # 在这里执行你的工作日任务 fi ``` 在这个脚本中,我们使用 `date` 命令获取当前日期和星期几的信息。然后,我们使用条件语句判断当前日期是否为周末(星期六或星期日)。如果是周末,脚本输出 "Today is a weekend.";如果是工作日,则输出 "Today is a workday."。你可以在脚本中添加你想要执行的工作日任务。 将这个脚本保存为一个文件,例如 `check_workday.sh`,然后在 crontab 中设置定时任务来运行该脚本。例如,你可以使用以下命令编辑 crontab: ``` crontab -e ``` 然后添加一行类似以下的条目来每天运行该脚本: ``` 0 9 * * 1-5 /path/to/check_workday.sh ``` 在这个例子中,脚本将在每个工作日的上午 9 点运行。你可以根据需要调整时间和脚本路径。 请注意,crontab 中的时间格式是 `分钟 小时 日 月 星期`,其中星期的取值范围是 0-7(0 和 7 都表示星期日)。 希望这个示例能帮助你实现在 crontab 中判断工作日。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fish_1112

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值