PHP每天生成一个存有系统要删除的临时文件的.out文件列表,由bash脚本逐行通过读取.out文件(每一行代表一个待删除的文件)挨个删除,代码如下(dl.sh):
#!/bin/bash
# Shell script utility to delete file.
# You can call script as follows, to read myfile.txt:
# ./dl.sh or.txt
# Copyright (c) 2009 kokko <http://www.kokkowon.com/>
#User define Fuction(UDF)
processLine(){
line="$@" #get all args
if [ ! -f $FILE ]; then
echo "$line does not exists"
else
echo "$line"
rm -rf $line
fi
}
#echo Please enter the file name:
#read FILE
if [ ! "$1" == "" ]; then
FILE="$1"
else
echo Please enter the file name:
read FILE
fi
if [ ! -f $FILE ]; then
echo "$FILE does not exists"
exit 1
elif [ ! -r $FILE ]; then
echo "$FILE cann't read"
fi
#read $FILE using the file descriptors
BAKIFS=$IFS
IFS=$(echo -en "\n\b")
exec 3<&0
exec 0<"$FILE"
while read -r line
do
processLine $line
done
exec 0<&3
IFS=$BAKIFS
exit 0
执行:
kokkowon@itbeing.com [~/www]# ./dl.sh ./temp.out
结果:
./message.tmp
./ECShop_V2.7.1_UTF8_Release1228.zip
./captcha.tmp
./index.tmp
./goods_script.tmp
./region.tmp
./article.tmp
./comment.tmp
./animated_favicon.gif
./auction.tmp
./catalog.tmp
./category.tmp
./affiche.tmp
./group_buy.tmp
./search.tmp
./favicon.ico
./itbeing/Cache/776e414da1b246fca4e72f34d6e5cce9.tmp
./itbeing/Cache/e8a01c49e3bd6881d1526bce80cbcad7.tmp
./itbeing/Cache/13da2f5482df2335081ce60c3ac5828c.tmp
./itbeing/Cache/aec1e7b1c552ce75969652a157572320.tmp
./pm.tmp
./respond.tmp
./exchange.tmp
./flow.tmp
./myship.tmp
./sitemaps.tmp
./snatch.tmp
./error_log
./article_cat.tmp