find
pencarian di sistem nyata. Lebih lambat tetapi selalu terkini dan memiliki lebih banyak opsi (ukuran, waktu modifikasi,...)
locate
menggunakan database yang dibuat sebelumnya (perintah updatedb
). Jauh lebih cepat, tetapi menggunakan database 'lama' dan hanya mencari nama atau bagian darinya.
Bagaimanapun, man find
dan man locate
akan membantu Anda lebih jauh.
Baik locate
dan find
perintah akan menemukan file, tetapi cara kerjanya sangat berbeda.
locate
akan berfungsi dalam mode offline:
- Untuk penjelasan sederhana, database pengindeksan file di sistem Unix disebut slocate akan mencantumkan lokasi semua file yang disertakan dengan sistem Unix. Saat Anda menjalankan
locate
, itu akan menggunakan database itu untuk mencari file tertentu. Masalah denganlocate
adalah jika Anda baru saja membuat file yang sekarang ingin Anda cari, cari tidak akan berfungsi karena slocate database tidak up-to-date. Untuk mengatasi masalah ini, Anda dapat menggunakanupdatedb
untuk memperbarui slocate basis data. Menjalankanlocate
lagi sekarang akan menemukan file yang baru dibuat. Oleh karena itu, banyak administrator sistem Linux menggunakancron
tugas untuk memperbarui slocate secara teratur basis data.
find
akan bekerja dalam mode online/"dalam waktu nyata".
- Ini benar-benar akan pergi dan mencari semua direktori untuk menemukan file tertentu yang ditentukan dan memeriksa setiap file satu per satu. Oleh karena itu, diperlukan banyak panggilan I/O.
Jadi berdasarkan sifatnya, jelas menemukan lebih cepat daripada menemukan tetapi menemukan waktu nyata.
Semoga ini bisa membantu menjernihkan ide. Semua yang terbaik. :)
Bisakah saya menggunakan perintah (seperti pohon) tanpa menginstalnya di seluruh sistem?
Apakah mungkin untuk 'menyembunyikan' proses dari daftar `ps` atau `top` di Linux