Perintah Find adalah salah satu perintah yang paling berguna &penting yang digunakan di Linux. Ini tersedia &diinstal secara default di hampir semua versi Linux. Segala sesuatu di Linux dalam bentuk file, &kami harus dapat menemukan file saat diperlukan.
Dengan menggunakan perintah find, kita dapat mencari file yang dibutuhkan berdasarkan sejumlah kriteria pencarian, kita dapat menggunakan satu atau menggabungkan beberapa kriteria &kemudian kita dapat melakukan tindakan pada hasil yang diperoleh. Dalam tutorial ini, kita akan membahas perintah find dengan bantuan beberapa contoh,
1) Mencantumkan semua file di direktori saat ini &sub-direktorinya
Untuk membuat daftar semua file di direktori saat ini &sub-direktori, kita dapat menggunakan
$ find
Atau, kita juga dapat menggunakan 'find . ' yang juga akan memberikan hasil yang sama seperti di atas.
2) Temukan semua file atau direktori dari direktori kerja Anda saat ini
Untuk mencari direktori saja, kita dapat menggunakan
$ find . -type d
Untuk mencari semua file saja &bukan direktori, gunakan
$ find . -type f
3) Mencantumkan semua file dari direktori tertentu
Untuk menemukan semua file dalam direktori tertentu, kita dapat menggunakan
$ find /root
Perintah ini akan mencari semua file di direktori /root.
4) Temukan file dengan nama di direktori
Untuk mencari file berdasarkan namanya di direktori tertentu, perintahnya adalah
$ find /root -name "linuxtechi.txt"
Ini akan mencari file linuxtechi.txt di folder /root. Kami juga dapat mencari semua file dengan ekstensi .txt,
$ find /root -name "*.txt"
5) Temukan file di beberapa direktori
Untuk menemukan file dengan namanya di beberapa direktori, kita dapat menggunakan
$ find /root /etc -name "linuxtechi.txt"
Dengan perintah ini, kita dapat mencari file linuxtechi.txt di direktori /root &/etc.
6) Temukan file dengan nama yang mengabaikan huruf besar/kecil
Untuk mencari file dengan namanya terlepas dari huruf besar atau kecilnya, kita dapat menggunakan ‘-iname ' opsi dalam perintah find
$ find /root -iname "Linuxtechi.txt"
Hasil dari perintah tersebut akan memberikan semua file yang bernama linuxtechi.txt, baik itu dalam huruf kecil atau huruf besar atau dalam kasus campuran.
7) Temukan semua jenis file selain jenis yang disebutkan
Misalkan kita ingin menemukan semua file yang bukan tipe yang disebutkan, untuk mencapai ini kita dapat menggunakan,
$ find /root -not -name "*.txt"
8) Temukan file dengan berbagai kondisi
Kita juga dapat menggabungkan lebih dari satu syarat untuk mencari file , Misalkan kita ingin mencari file dengan ekstensi '.txt' dan '.html'
$ find . -regex ".*\.\(txt\|html\)$"
9) Temukan file dengan menggunakan kondisi ATAU
Kami juga dapat menggabungkan beberapa kriteria pencarian &kemudian mencari file berdasarkan pemenuhan salah satu kondisi menggunakan operator OR,
$ find -name "*.txt" -o -name "linuxtechi*"
10) Temukan semua file berdasarkan izinnya
Untuk mencari file berdasarkan izin, gunakan -perm pilihan di perintah find
$ find /root -type f -perm 0777
11) Temukan semua file tersembunyi
Untuk mencari semua file tersembunyi dalam direktori, perintahnya adalah
$ find ~ -type f name ".*"
12) Temukan semua file dengan SGID
Untuk menemukan semua file dengan bit SGID, kita dapat menggunakan
$ find . -perm /g=s
13) Temukan semua file dengan SUID
Untuk menemukan semua file dengan bit SUID, kami akan menggunakan
$ find . -perm /u=s
14) Temukan semua file yang dapat dieksekusi
Untuk hanya mencari file yang dapat dieksekusi, perintahnya adalah
$ find . -perm /a=x
15) Temukan semua file hanya-baca
Kami juga dapat mencari file hanya-baca menggunakan perintah find,
$ find /root -perm /u=r
16) Temukan semua file milik pengguna
Untuk mencari semua file yang dimiliki oleh pengguna tertentu, misalnya linuxtechi, kita akan menggunakan perintah berikut,
$ find . -user linuxtechi
17) Temukan semua file yang dimiliki oleh grup
Untuk menemukan semua file yang dimiliki oleh grup tertentu, gunakan
$ find . -group apache
18) Temukan file dengan ukuran tertentu
Jika kita ingin mencari file yang ukuran pastinya kita ketahui, maka kita dapat menggunakan ‘-size ' opsi dengan perintah find untuk mencari file
$ find / -size -2M
19) Temukan semua file dengan rentang ukuran
Jika kita mencari file yang ukuran sebenarnya tidak kita ketahui tetapi mengetahui kisaran ukuran atau hanya ingin mencari semua file dalam rentang ukuran, maka kita juga dapat mencari file menggunakan kriteria tersebut
$ find / -size +2M -size -5M
Kita juga dapat menggunakan perintah find untuk menemukan semua file yang ukurannya lebih besar dari 50 MB
$ find / -size +50M
20) Temukan file yang diubah N hari yang lalu
Misalnya, kami ingin mencari semua file yang telah dimodifikasi 8 hari yang lalu. Kita bisa melakukannya dengan menggunakan ‘-mtime ' opsi dalam perintah find
$ find / -mtime 8
21) Temukan file yang telah diakses N hari yang lalu
Sama seperti contoh di atas, kita juga dapat menemukan file yang telah diakses 8 hari yang lalu menggunakan ‘-atime’,
$ find / -atime 8
22) Temukan semua file atau direktori kosong
Untuk menemukan semua file kosong di sistem, kita akan menggunakan perintah di bawah
$ find / -type f -empty
Demikian pula, untuk menemukan semua direktori kosong
$ find ~/ -type d -empty
23) Temukan file terbesar dan terkecil
Untuk membuat daftar file terbesar atau terkecil, kami akan menggabungkan 'sort ' command with find command &jika kami ingin membuat daftar tiga teratas dari file terbesar tersebut, kami akan menggabungkan 'head ' perintah.
Untuk membuat daftar tiga file teratas di direktori saat ini, perintahnya adalah
$ find . -type f -exec ls -s {} \; | sort -n -r | head -3
Kami juga dapat menemukan file terkecil di direktori saat ini,
$ find . -type f -exec ls -s {} \; | sort -n | head -3
24) Temukan semua file dengan izin khusus &ubah menjadi 644 (atau izin lainnya)
Dengan perintah find, kita juga dapat mencapai beberapa fungsi lanjutan. Misalnya, kita dapat membuat daftar semua file yang memiliki izin 644 dan kemudian mengubah izin tersebut menjadi 777. Untuk melakukannya, jalankan
$ find / -type f -perm 644 -print -exec chmod 777 {} \;
25) Temukan semua file yang cocok dengan kriteria &hapus file tersebut
Kami mungkin diminta untuk mencari &menghapus file yang cocok dengan kriteria. Untuk melakukannya dengan perintah find, jalankan
$ find / -type f -name 'linuxtechi.*' -exec rm -f {} \;
Ini adalah beberapa contoh sederhana yang menunjukkan fungsionalitas perintah find &dapat digunakan untuk melakukan tugas pencarian/penemuan berulang yang membosankan dengan lebih mudah.
Baca Juga :16 Contoh Perintah 'cp' yang Berguna untuk Pemula Linux