linux定时删除7天前的日志,linux下删除7天前日志的代码(php+shell)_php技巧

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转换不熟悉

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

相关标签:删除日志

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值