このサイトや他のサイトを調べて、cron で使用できる単純な php スクリプトを見つけて、ディレクトリ内の X 日以上経過したファイルを削除しました。たくさんあるようですが、私にはうまくいきません。私は共有サーバー (GC ソリューション) を使用しており、ホスティング会社は優れていますが、私が使用しているパッケージにはシェル アクセスが含まれていないため、.sh または bash コマンドを使用できないと思います。
データベースの Mysqldump を実行し、それをホーム エリア ( /home/mysite/backups ) のディレクトリにコピーし、コピーをメールで送信するためのきちんとした php スクリプトがあります。これはすべて正常に機能します。ここで、バックアップ ディレクトリに 5 日分のバックアップを残すスクリプトを実行しようとしました。現在、このスクリプトを試しています:-
<?php
$dir = opendir('/home/mysite/backups");
if ($dir) {
// Read directory contents
while (false !== ($file = readdir($dir))) {
// Check the create time of each file (older than 5 days)
if (filemtime($file) < (time() - 60*60*24*5)) {
unlink($file);
}
}
}
?>
動作しません。私の cron 設定文字列は次のとおりです:- php -q /home/mysite/public_html/scripts/delold6.php
html_publicの上から実行しようとしましたが、喜びはありません。バックアップディレクトリの権限は755に設定されています。バックアップスクリプトがダンプをこのディレクトリにコピーすると、ファイルは644に設定されます。これらを777にchmodしようとしました-喜びはありません. 誰でもここで助けてもらえますか。*find /path/to/your_directory -mtime +5 -exec rm -f {} \;* cron からも機能しません。