码迷,mamicode.com
首页 > 其他好文 > 详细

阿铭每日一题 day 7 20180117

时间:2018-01-21 12:30:14      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:比较   data   min   技术分享   new   base   http   技术   ash   

技术分享图片

 

方法一:

1 #!/bin/bash
2 while true
3 do
4 find /data/web/attachment/ -type f -mmin -5 -exec echo $(date +%Y/%m/%d\ %H:%M:%S) {} \; >> /tmp/day7.log
5 sleep 5
6 done

 

 

 

day7=参考答案=~ps.不是唯一答案哦
解析
1、不要想的太复杂,核心命令只有一个:find /data/web/attachment/ -type f - mmin -5
2、每5分钟检测一次,需要有一个计划任务,每隔5分钟执行一次。脚本检测的时候,使用find命令查找5分钟内有过更新的文件,若是有更新,那这个命令会输出东西,否则是没有输出的。固,可以把输出结果的行数作为比较对象,看看它是否大于0。
3、当然大家还可以用find命令执行后,看$?的返回值是否是0。
 
【参考答案】

 1 #!/bin/bash
 2 
 3 d=`date -d " -5 min" +%Y\%m\%d\%H\%M`
 4 basedir="/data/web/attachment"
 5 
 6 find $basedir -type f -mmin -5 > /tmp/newf.txt
 7 n=`wc -l /tmp/newf.txt|awk {print $1}`
 8 if [ $n -gt 0 ]
 9 then
10   /usr/bin/mv /tmp/newf.txt /tmp/$d
11 fi

 

 

 

crond计划任务

1 */5 * * * * /bin/bash /root/scripts/day7_20180117.sh

 

阿铭每日一题 day 7 20180117

标签:比较   data   min   技术分享   new   base   http   技术   ash   

原文地址:https://www.cnblogs.com/ivan-yang/p/8323563.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!