Saat bekerja dengan perintah find di Linux, Anda mungkin perlu mencari file atau direktori sambil mengecualikan direktori tertentu dari hasil pencarian. Ini sangat berguna saat berhadapan dengan sistem file yang besar atau direktori dengan banyak subdirektori. Dengan menggunakan opsi -prune atau menggabungkan perintah find dengan operator ! (negasi), Anda dapat secara efisien mengecualikan direktori tertentu, merampingkan proses pencarian Anda.
find
-prune
-prunefind
Untuk menemukan semua file .txt di direktori , tetapi mengecualikan direktori Downloads:
find /home/user -path "/home/user/Downloads" -prune -o -name "*.txt" -print
Untuk beberapa direktori:
find /path/to/start -path "/first/path/to/exclude" -prune -o -path "/second/path/to/exclude" -prune -o -name "search_pattern" -print
-not
-not/home/user
find /home/user -not -name "*.txt"
Menggabungkan dengan : Anda juga dapat menggabungkan dengan , meskipun ini mungkin membuat perintah lebih kompleks:
find /path/to/start -not -path "/path/to/exclude" -prune
!
!-not
Penggunaan dasar:
find /path/to/start ! -name "pattern_to_exclude"
Atau, untuk menghindari interpretasi shell:
find /path/to/start ! -name "pattern_to_exclude"
Temukan item yang mengecualikan file .txt dan .jpg:
find /home/user ! -name "*.txt" ! -name "*.jpg"
find /home/user -type d ! -name "temp"
Urutan penting, terutama dengan . Letakkan tepat setelah kondisi yang ingin Anda kecualikan.
Saat menggunakan karakter khusus atau directive di shell, pastikan mereka diinterpretasikan dengan benar, baik dengan menggunakan tanda kutip atau escaping.
Untuk pencarian kompleks, gunakan tanda kurung untuk mengelompokkan kondisi. Ingatlah untuk mengescap mereka di shell: .
Sebelum menggabungkan perintah dengan tindakan destruktif, uji kondisi Anda dengan untuk memastikan Anda menargetkan file yang benar.
Singkatnya, perintah menyediakan opsi serbaguna, seperti , , dan , untuk menyempurnakan pencarian Anda dengan mengecualikan direktori atau pola tertentu. Memahami dan menggunakan opsi ini akan menghasilkan pencarian file dan direktori yang lebih efisien dan akurat di Linux.