shell 删除文件后不断写入。详细看代码
以下是settime.sh文件
#!/bin/sh
step=2
fsize=$(ls -l /www/web/email/txt_save.txt | cut -d' ' -f 5)
if [ "$fsize" -lt 1000 ];then
rm /www/web/email/txt_save.txt
exit
else
for (( i = 0; i < 60; i=(i+step) ));do
/www/wdlinux/apache_php-5.2.17/bin/php -f /www/web/email/hk.php
sleep $step.'s'
done
fi
exit 0
=====================
以下是hk.php
foreach ($farr as $line)
{
$args=explode(",",trim($line));
if(stripos($txt,$args[0])!=false)
{
if(stripos($save_txt,$txt)!=false)
{
break;
}
else
{
$content .="题目:".$txt." 链接:".$base_html.$row->href."<br />";
fwrite($s_file,$txt."\r\n");
break;
}
}
}
在crontab上设置了每一分钟执行一次settime.sh
settime.sh上设置了每2秒执行一次hk.php
总结来说:就是每2秒执行一次hk.php
==================================
hk.php会每2秒写入一次txt文件,记录当前时间。
问题在于,当执行删除txt_save.txt文件的时候,txt_save.txt就会不断写入。而且不断写入同一条数据。