Perintah find pada sistem operasi Linux berfungsi untuk mencari file atau direktori berdasarkan nama, ukuran, jenis file dan sebagainya.
Cara mencari file berdasarkan nama
Perintah berikut untuk mencari file bernama dokumen.pdf
di dalam direktori saat ini (.
).
$ find . -name "dokumen.pdf"
Gunakan opsi -iname
untuk mengaktifkan mode case-insensitive pada hasil pencarian, yaitu dOkUmEn.pdf
dan dokumen.pdf
dianggap sama.
$ find . -iname "dokumen.pdf"
Cara mencari file berdasarkan ekstensi
Kalian dapat menggunakan pola wildcard untuk mencari file berdasarkan ekstensinya.
Contoh perintah berikut untuk mencari file yang berekstensi .txt
.
$ find . -name "*.txt"
Harap beri tanda petik di antara simbol bintang (*
) agar tidak diinterpretasikan oleh shell.
Cara mencari file berdasarkan jenis file
Kalian perlu menambahkan opsi -type
untuk mencari file berdasarkan jenis file.
Untuk mencari file biasa, gunakan opsi -type f
.
$ find . -type f
Untuk mencari direktori, gunakan opsi -type d
.
$ find . -type d
Untuk mencari file yang bertipe symlink, gunakan opsi -type l
.
$ find . -type l
Cara mencari file berdasarkan permission
Kalian dapat menggunakan opsi -perm
untuk mencari file berdasarkan permission-nya.
Misalnya, perintah berikut untuk mencari file yang memiliki permission 755
.
$ find . -perm 755
Cara mencari file berdasarkan ukuran
Untuk mencari file berdasarkan ukurannya, gunakan opsi -size
diikuti nilai dan satuan ukuran file.
Satuan ukuran file, antara lain c
untuk satuan ukuran bytes, k
untuk kibibytes, M
dan G
untuk mebibytes dan gibibytes.
Misalnya, pada contoh berikut untuk mencari file yang berukuran kurang dari 1MiB.
$ find . -type f -size 1M
Perintah find berikut untuk mencari file yang lebih besar dari 1MiB.
$ find . -type f -size +1M
Kalau ingin mencari file yang berukuran lebih besar 1MiB dan lebih kecil dari 10MiB, gunakan perintah berikut.
$ find . -type f -size +1M -size 10M
Cara menggunakan opsi -exec pada perintah find
Kalian dapat menjalankan perintah tertentu terhadap file yang telah ditemukan dengan opsi -exec
.
Misalnya, perintah berikut untuk mengganti user pada file yang awalnya root
menjadi www-data
.
$ find /var/www -user root -type f -exec chown www-data {} \;
Cara menghapus file kosong
Kalian dapat menggunakan perintah find untuk menghapus file kosong dengan mengombinasikan opsi -empty
dan -delete
.
find . -type f -empty -delete