Saya berlari
sudo /usr/libexec/locate.updatedb
kemudian
locate Radium3
tetapi tidak mengembalikan apa-apa!
tapi
$ ls ~/Library/Containers/com.catpigstudios.Radium3/
Container.plist Data
Jadi mengapa tidak locate
melihat semua file?
Apakah saya menggunakan perintah ini dengan benar di OS X?
sumber
#SEARCHPATHS="/"
dalam konfigurasi, itu tidak membantu.-v
Opsi tampaknya tidak menghasilkan output tambahan: /mdfind -name text
yang lebih akurat. Hanyamdfind text
memberi Anda file yang mengandung teks juga.Izin mungkin menjadi penyebab karena lokasi tampaknya tidak dapat membaca file yang tidak dapat dibaca dunia. Lihat jawaban ini oleh Plundra untuk penjelasan lebih lanjut.
The findutils paket dari homebrew tidak memungkinkan
gupdatedb
danglocate
perintah yang tampaknya untuk mengatasi beberapa keterbatasan utilitas builtin.sumber
mdutil
apakah masuk akal untuk memeriksa ini? Satu kasus penggunaan yang dapat saya pikirkan adalah bahwa saya dapat memicu memindai ulang secara manual dengangupdatedb
- dengan Spotlight tidak begitu mudah atau akan membutuhkan waktu lebih lama (juga mengindeks isi file). Apakah ada kelebihan lain?updatedb
lebih cepat untuk itu.glocate
tampaknya tidak memiliki masalah pengindeksan file sistem, sementara saya menemukanmdfind
mengabaikan ~ / Perpustakaan dan file sistem lainnya. Saya pasti menemukan saya mendapatkan lebih banyak hits denganglocate
lebihmdfind
dalam sebagian besar keadaan. YMMV.sudo gupdatedb
, kemudian menyimpanglocate Radium
output. Lalu aku berlarigupdatedb
dan berkata:,/.Trashes: Permission denied
sama untuk beberapa folder lain. Saya membandingkan output untuk keduanya dan itu sama! Aneh ...sudo gupdatedb
(menjalankannya sebagai root), kemudian Anda menindaklanjutinya dengan menjalankannyagupdatedb
sebagai pengguna biasa yang tidak akan memiliki akses ke file yang akan diakses oleh pengguna root, artinya Anda akan mendapatkan izin ditolak kesalahan. Jika Anda ingin database lengkap nama file untuk seluruh sistem Anda, tetap jalankan sebagai root. Ini mengekspos file Anda ke pengguna lain pada sistem yang dapat menggunakanglocate
perintah. Tetapi jika Anda adalah satu-satunya pengguna, itu tidak masalah.Jika Anda ingin mencari database yang sama yang digunakan Spotlight, Anda dapat menggunakan
mdfind
perintah sebagai alternatif (meskipun bukan pengganti yang tepat) untuklocate
:sumber