「重複」ファイルを一括削除する方法は?

「重複」ファイルを一括削除する方法は?

重複したファイルがたくさんあります。ファイルは次のようになります。

dsc_0364_5723957929_o.jpg
dsc_0364_5294988157_o.jpg

dsc_0365_2464873748_o.jpg
dsc_0365_2853758327_o.jpg
....

同じプレフィックスを持つ2番目(時には3番目)のファイルを削除したいと思います。どうすればいいですか?

ベストアンサー1

以下でgawk使用できます。findxargs

find -maxdepth 1 -type f -name 'dsc*jpg' -print0 |
gawk 'BEGIN { RS=ORS="\0" ; FS="_" } seen[$2]++' |
xargs -0 rm

レコード区切り文字として NUL を使用するのは AFAIK です。GNU awkでのみサポートされています。gawk)。

おすすめ記事