GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana saya bisa menemukan semua ekstensi file yang berbeda dalam hierarki folder?

Coba ini (tidak yakin apakah ini cara terbaik, tetapi berhasil):

find . -type f | perl -ne 'print $1 if m/\.([^.\/]+)$/' | sort -u

Ini berfungsi sebagai berikut:

  • Temukan semua file dari folder saat ini
  • Mencetak ekstensi file jika ada
  • Buat daftar terurut yang unik

Tidak perlu pipa ke sort , awk bisa melakukan semuanya:

find . -type f | awk -F. '!a[$NF]++{print $NF}'

Versi rekursif:

find . -type f | sed -e 's/.*\.//' | sed -e 's/.*\///' | sort -u

Jika Anda ingin total (berapa kali ekstensi terlihat):

find . -type f | sed -e 's/.*\.//' | sed -e 's/.*\///' | sort | uniq -c | sort -rn

Non-rekursif (folder tunggal):

for f in *.*; do printf "%s\n" "${f##*.}"; done | sort -u

Saya mendasarkan ini pada posting forum ini, kredit harus masuk ke sana.


Linux
  1. Cara Menemukan File Terlama Di Pohon Direktori Di Linux

  2. Bagaimana Menemukan Jenis File Img Dan Memasangnya?

  3. Bagaimana saya bisa dengan cepat menjumlahkan semua angka dalam sebuah file?

  1. Bagaimana saya bisa menambahkan string ke awal setiap file dalam folder di bash?

  2. Bagaimana saya bisa mengedit semua file yang dikembalikan oleh find in vi di Linux?

  3. Bagaimana menemukan pengelola file default?

  1. Bagaimana saya bisa menemukan semua file yang di-hardlink pada sistem file?

  2. Bagaimana saya bisa menemukan file terlama di pohon direktori

  3. Bagaimana saya bisa meraster semua teks dalam PDF?