ディレクトリから重複ファイルを削除する方法は?

ディレクトリから重複ファイルを削除する方法は?

次のファイル名パターンなど、多くのXMLファイルを含むディレクトリがあります。

12345_65786.xml
12678_78907.xml
12345_89076.xml

これで、12345_65786.xmlまたは12345_89076.xmlを削除する必要があります。どうすればいいですか?

ファイル名の「_」の前にある同様の値に基づいて重複ファイルを削除する必要があります。

答え1

努力する

ls | awk -F_ 'p[$1]++ { printf "rm %s\n",$0;}' | bash

どこ

  • -F__区切り文字として使用
  • p[$1]++プレフィックスの計算とテスト
  • { ... }rm filename上記数が1より大きい場合は印刷してください。
  • | bash実際の削除を実行します(プレビューのためにこの部分をスキップしてください)。

関連情報