GNU/Linux >> Belajar Linux >  >> Linux

Apa perbedaan antara 'temukan' dan 'temukan' di Linux?

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 dengan locate 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 menggunakan updatedb untuk memperbarui slocate basis data. Menjalankan locate lagi sekarang akan menemukan file yang baru dibuat. Oleh karena itu, banyak administrator sistem Linux menggunakan cron 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. :)


Linux
  1. Apa perbedaan antara env dan set (di Mac OS X atau Linux)?

  2. Apa perbedaan antara strtok_r dan strtok_s di C?

  3. Apa perbedaan antara driver platform Linux dan driver perangkat biasa?

  1. Apa perbedaan antara fsck dan e2fsck?

  2. Apa perbedaan antara panggilan Perpustakaan dan panggilan Sistem di Linux?

  3. Apa perbedaan antara unlink dan rm?

  1. Apa perbedaan antara InnoDB dan MyISAM?

  2. Perbedaan Antara [[ $a ==Z* ]] Dan [ $a ==Z* ]?

  3. Apa perbedaan antara perintah locate dan find di Linux?