阿铭每日一题 day 7 20180117

Posted Ivan_yyq

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了阿铭每日一题 day 7 20180117相关的知识,希望对你有一定的参考价值。

 

方法一:

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的主要内容,如果未能解决你的问题,请参考以下文章

阿铭每日一题 day 9 20180119

阿铭每日一题 day 1 20180111

阿铭每日一题 day 3 20180113

阿铭每日一题 day 8 20180118

阿铭每日一题 day 5 20180115

阿铭每日一题 day 6 20180116