先月1日前のファイルを削除する方法

先月1日前のファイルを削除する方法

毎月1日に実行されるスクリプトがあります。このスクリプトでは、先月1日以前に変更されたすべてのファイルを削除したいと思います。例えば。このスクリプトは3月1日に実行されます。 2月1日より前に作成されたファイルをすべて削除したいと思います。可能ですか?

ベストアンサー1

シェルスクリプトを使用してください。

#!/bin/sh

dir_to_check='/root/temp/somedir'

last_month=$(date -d "-1 month -$(($(date +%d)-1)) days" +%Y-%m-%d)

find "$dir_to_check" ! -newermt "$last_month" -type f -exec rm {} \;

dir_to_check='/root/temp/somedir'ファイルを検索するディレクトリ(削除しようとしなかったらいいです。)みんな先月以前に作成されたコンピュータのファイル)。

last_month=$(date -d "-1 month -$(($(date +%d)-1)) days" +%Y-%m-%d)- 変数を前月1日に設定します。

find "$dir_to_check" ! -newermt "$last_month" -type f -exec rm {} \;- 変更された日付が前月1日より前のすべてのファイルを検索して削除します。

おすすめ記事