回答:
コマンドGNU find
は、行く方法です。たとえば、8月1日から5日までの間に現在のディレクトリにあるすべてのファイルを削除するには、次のコマンドを使用できます。
find . -maxdepth 1 -type f -newermt 2011-08-01 ! -newermt 2011-08-06 -delete
-delete
まず、アクションなしでコマンドを実行して、関心のあるファイルのリストを表示することをお勧めします(-ls
lsのようなリストを作成することもできます)。
-maxdepth 1
仕様を削除すると、すべてのサブディレクトリも走査されます。
たとえば、時間を指定することもできます
find . -maxdepth 1 -type f -newermt '2011-08-01 10:01:59' \
! -newermt '2011-08-06 23:01:00' -delete
日付と時刻の間のスペースを保護する単一引用符を削除しないように注意してください。
文字!
は否定であり、読む必要があります。この日付よりも新しいが、この他の日付よりも新しいものではありません。
!
ありません。この例では、2011-08-06より新しいものではありません。
-type f
ます。
-type f
、私はそれを忘れています。これ-delete
はGNU拡張機能だと思います。