linux下删除7天前日志的代码(php+shell)
程序员文章站
2022-10-05 22:15:04
php版本: 复制代码 代码如下: /** * 删除7天前的日志 * @param $logpath */ function del7daysagolog($logpath...
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转换不熟悉
复制代码 代码如下:
/**
* 删除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 图片文件上传实现代码
下一篇: Python 字符串的方法
推荐阅读
-
Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份
-
linux下删除7天前日志的代码(php+shell)
-
Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录
-
Linux下定时切割Tomcat日志并删除指定天数前的日志记录
-
如何在linux的vi编辑器下删除前N行
-
linux下删除7天前日志的代码(php+shell)
-
Linux下使用RMAN和控制文件备份删除归档日志的SHELL脚本
-
Linux下使用RMAN和控制文件备份删除归档日志的SHELL脚本
-
linux下备份MySQL数据库并删除7天前的备份数据_MySQL
-
Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份