ホームページ > php教程 > php手册 > Linux で 7 日前のログを削除するコード (php シェル)

Linux で 7 日前のログを削除するコード (php シェル)

WBOY
リリース: 2016-06-13 12:12:27
オリジナル
867 人が閲覧しました

PHP バージョン:

コードをコピー コードは次のとおりです:


/**
* 7 日前のログを削除
* @param $logPath
*/
関数del7daysAgoLog($ logPath) {
if(empty($logPath))return;
$handle = opendir($logPath);
while(($file = readdir($handle)); ){
$pos = strpos($file, '.log');
if ($pos !== false && (strtotime("-1 週間") > fileatime($logPath . $file) )) {
unlink($logPath . $file);
}
}
}



シェル バージョン

コードをコピーします コードは次のとおりです:


#!/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



シェル版の方が面倒です。重要なのは、私が Linux 変換に慣れていないということです。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート