shell 脚本定时删除指定文件

本文介绍了一个使用bash脚本实现的定时任务,用于自动删除指定目录中超过一定时间未被修改的.jsp和.html文件。该脚本通过crontab设置每分钟执行一次,能够有效地帮助系统管理员维护文件系统的整洁。

脚本文件demo.sh:

#!/bin/bash
#要执行删除的目录
filePath=/usr/local/tomcat/webapps/admin
#设定时间范围
time_sect=60
#执行脚本的当前时间
timenow=`date -u +%s`
#循环开始选择文件名
cd $filePath
#文件匹配
for i in `ls *.jsp *.html` 
do
#文件的创建时间
fileTime=`stat --printf=%Y $filePath/$i`
#判断文件的修改时间是否在设定的时间范围内,
if [ $(($timenow-$fileTime)) -gt $time_sect ]
then
#满足if条件后,删除文件
rm -rf $filePath/$i
fi
done
exit

在某个文件夹下新建文件,自定义文件名(linux文件)。例子:zhangcron

添加如下内容:

*/1 * * * * /usr/local/demo.sh   

 意为没分钟执行一次demo.sh,注意空格

执行linux命令:

crontab zhangcron

 这样linux就会在接下来的每分钟去执行一次demo.sh

 重启系统不影响

如若出现问题:

'emo.sh: line 11: syntax error near unexpected token `do
'emo.sh: line 11: `do

 则是windows的回车键和linux不同造成,可下载并安装Dos2Unix:

 http://linux.softpedia.com/get/Utilities/Dos2Unix-5519.shtml

 解压  tar -zvxf  ***

//进入安装目录执行一下命令
make
make install

 然后执行命令:

dos2unix  demo.sh 
sh demo.sh

 ok!

建议:写完脚本后要先测试!!

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值