有一台服务器作为web应用,有一个目录(/root/data/web/attachment)不定时地会被上传新的文件,但不确定上传时间。
所以我们每五分钟 做一次检测看是否有新文件生成
写一个shell脚本去检测,检测完成后若有新的文件,将新文件地列表输出到一个按年月日时分为名字地日志里:
每五分钟检测一次,创一个计划任务,每五分钟执行一次
脚本检测,使用find命令查找5分钟内有过更新地文件,若有更新,输出,反之不输出
故,可以把输出结果行数作为比较对象,看它是否大于0
#!/bin/bash
#author:tongby
#version:t1
#date:2023-10-17
d=`date +%Y%m%d%H%M`
basedir=/root/data/web/attachment
find $basedir/ -type f -mmin -5 > /tmp/newf.txt
if [ -s /tmp/newf.txt ]; then
/bin/mv /tmp/newf.txt /tmp/$d
fi
总的来说脚本并不难,就是判断文件状态
find -mmin以分钟单位查找
[-s file]表示文件存在且内容不为空,条件成立