GNU/Linux >> Belajar Linux >  >> Linux

Secara rekursif menemukan file dengan ekstensi tertentu

Menggunakan find -regex argumen:

find . -regex '.*/Robert\.\(h\|cpp\)$'

Atau hanya menggunakan -name :

find . -name 'Robert.*' -a \( -name '*.cpp' -o -name '*.h' \)

find -name "*Robert*" \( -name "*.pdf" -o -name "*.jpg" \)

-o mewakili OR kondisi dan Anda dapat menambahkan sebanyak yang Anda inginkan dalam kawat gigi. Jadi ini mengatakan untuk menemukan semua file yang berisi kata "Robert" di mana saja dalam namanya dan yang namanya diakhiri dengan "pdf" atau "jpg".


Sebagai alternatif untuk menggunakan -regex opsi pada find , karena pertanyaannya diberi label bash, Anda dapat menggunakan mekanisme ekspansi brace:

eval find . -false "-o -name Robert".{jpg,pdf}

Preferensi saya:

find . -name '*.jpg' -o -name '*.png' -print | grep Robert

Linux
  1. Menghilangkan Ekstensi Dengan Temukan?

  2. Bagaimana Menyembunyikan File Dengan Ekstensi Tertentu?

  3. Cara Menghapus File dengan Ekstensi Tertentu di Baris Perintah Linux

  1. Cara Menemukan Semua File dengan Ukuran File Nol (0) Bytes di Direktori Secara Rekursif

  2. Linux / UNIX :Contoh perintah find untuk menemukan file dengan set izin tertentu

  3. Kecualikan daftar file dari find

  1. Urutkan File Dalam Folder Tertentu Dengan Ranger?

  2. Temukan File Terbesar Secara Rekursif?

  3. Bagaimana menemukan semua file yang diakhiri dengan .rb dengan Linux?