Posted in PHP onJanuary 02, 2011
PHP版本:
/** * 删除7天前的日志 * @param $logPath */ function del7daysAgoLog($logPath) { if(empty($logPath))return; $handle = opendir($logPath); while(($file = readdir($handle)) !== false){ $pos = strpos($file, '.log'); if ($pos !== false && (strtotime("-1 week") > fileatime($logPath . $file))) { unlink($logPath . $file); } } }
shell 版本
#!/bin/sh function del7daysAgoLog (){ for file in $(ls $1) do if [ "${file##*.}" = "log" ] then ctime=$(stat $1/$file -c "%y") ctimeU=$(date -d "$ctime" +%s) now=$(date +%s) SevenDaysAgo=$(($now - 36000 * $Days)) if [ $SevenDaysAgo -gt $ctimeU ] then $(rm $file)#此处删除文件 fi else echo "" fi done } Days=7 Path="/var/www/***/log" del7daysAgoLog $Path $Days
shell 版本比较麻烦 关键我linux转换不熟悉
linux下删除7天前日志的代码(php+shell)
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@