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 转换不熟悉
来源: https://www.php1.cn/detail/php-6f074fa20a.html