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

 2025-01-16  阅读 224  评论 8  点赞 224

摘要: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 !== fal
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转换不熟悉
标签:phpphp教程

评论列表:

  •   tg2087002654
     发布于 3天前回复该评论
  • 写的很不错,学到了!
  •   xiedaimade
     发布于 2天前回复该评论
  • 写的很不错,学到了!
显示更多评论

发表评论:

管理员

承接各种程序开发,外贸网站代运营,外贸网站建设等项目
  • 内容2460
  • 积分67666
  • 金币86666

Copyright © 2024 LS'Blog-保定PHP程序员老宋个人博客 Inc. 保留所有权利。 Powered by LS'blog 3.0.3

页面耗时0.0282秒, 内存占用1.94 MB, 访问数据库29次

冀ICP备19034377号