GNU/Linux >> Linux の 問題 >  >> Linux

Linuxで特定の日付より古いファイルを削除するにはどうすればよいですか?

find ~ -type f ! -atime 4|xargs ls -lrt

これにより、4 日以上前にアクセスされたファイルが一覧表示されます 、ホーム ディレクトリから検索します。


タイムスタンプをファイルとしてタッチし、それを参照点として使用できます:

例えば2014 年 1 月 1 日:

touch -t 201401010000 /tmp/2014-Jan-01-0000

find /path -type f ! -newer /tmp/2014-Jan-01-0000 | xargs rm -rf 

find のため、これは機能します -newer を持っています 私たちが使っているスイッチ。

man find から :

-newer file
       File  was  modified  more  recently than file.  If file is a symbolic
       link and the -H option or the -L option is in effect, the modification time of the 
       file it points to is always used.

この他の回答はファイルシステムと find を汚染します それ自体が「削除」オプションを提供します。したがって、結果を xargs にパイプしてから rm を発行する必要はありません。

この回答はより効率的です:

find /path -type f -not -newermt "YYYY-MM-DD HH:MI:SS" -delete

これは私にとってはうまくいきます:

find /path ! -newermt "YYYY-MM-DD HH:MM:SS" | xargs rm -rf

Linux
  1. Linuxでファイルを見つける方法

  2. LinuxでX日より古いすべてのファイルを削除するにはどうすればよいですか?

  3. Linux で特定の期間より古いファイルを見つけて削除する方法

  1. Linux で空のディレクトリとファイルを見つけて削除する方法

  2. Linux ファイル システムで dos 形式のファイルを見つける方法

  3. x日より古いファイルまたはフォルダーを見つけて削除する

  1. LinuxでXサイズよりも大きいまたは小さいファイルを見つける方法

  2. Linux –ファイルの作成日を見つける方法は?

  3. Linux:find を使用して <date> より古いファイルを見つける