7日以上前のファイルとフォルダを削除したいので試しました
[17:07:14 [email protected]:~]# find /tmp/ -mindepth 1 -maxdepth 1 -ctime +7 -exec ls -l {} \;
したがって、find /tmp/ -mindepth 1 -maxdepth 1 -ctime +7 -exec ls -l {} \;
dirは表示されませんが、find /tmp/ -mindepth 1 -maxdepth 2 -ctime +7 -exec ls -l {} \;
サブディレクトリ内のいくつかのファイルを表示します。
1つの特定のディレクトリで7日より古いファイル/フォルダを削除する正しい方法は何ですか?
このコードを利用できます
find /tmp/* -mtime +7 -exec rm {} \;
説明
最初の引数はファイルへのパスです。これは、上記の例のように、パス、ディレクトリ、またはワイルドカードにすることができます。フルパスを使用することをお勧めします。execrmを使用せずにコマンドを実行して、正しい結果が得られるようにします。
2番目の引数-mtimeは、ファイルの保存日数を指定するために使用されます。 +7を入力すると、7日より古いファイルが検索されます。
3番目の引数-execを使用すると、rmなどのコマンドを渡すことができます。 {} \;最後にコマンドを終了する必要があります。
ソース: http://www.howtogeek.com/howto/ubuntu/delete-files-older-than-x-days-on-linux/
フォルダーを削除するには、フォルダー内を空にした後、コードの一部でrmdir
のrm
instadを追加できます。追加できるディレクトリのみを表示する場合も同様です。
type -d
以下のようなコードに:
find /tmp/*/* -mtime +7 -type d -exec rmdir {} \;
簡単にできる
find /tmp/* -mtime +7 -exec rm -rf {} \;
ファイルとディレクトリを削除します
私の簡単な方法:
find /tmp/* -daystart -mtime +7 -delete
daystart
オプションは、24時間前ではなく、今日の初めからの時間を測定します
ref: official_doc