linux下删除7天前日志的代码(php+shell)

yipeiwu_com7年前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上传非标准格式的图片pjpeg失败的方法

前一阵子网站新上了相册功能,可最近总发现有一些用户上传的图片文件链接失效,代码检查了很多次,测试也做的比较充分了,但还是会出现上传失败的问题,很是郁闷,今天终于找到了解决办法。 从备份源...

php 计划任务 检测用户连接状态

计划任务 复制代码 代码如下: ignore_user_abort(); // 用户关闭浏览器程序依然执行 set_time_limit(0); // 不限制程序运行时间 $interv...

推荐Discuz!5的PHP代码高亮显示与实现可运行代码

discuz!5.0论坛显示风格的php代码高亮显示插件, 把php代码进行语法着色,喜欢PHP的同志可以轻松的看代码啦。 同时添加了html代码运行功能。 此插件是在以前某位同志发布的...

通过PHP修改Linux或Unix口令的方法分享

需要的工具和安装:   你必须安装下面的工具和软件:   –修改口令的Shell脚本;   – Sudo访问权;   – Apache or Lighttpd web服务器;   – P...

PHP防注入安全代码

简述:/*************************    说明:    判断传递的变量中是否含有非法字符 &...