quarta-feira, 13 de maio de 2009

Busca instantânea de arquivos no Mac OS X

Um comando muito interessante herdado do Linux pelo Mac OS X é o locate.
Com este comando você pode localizar qualquer arquivo em seu sistema de arquivos de forma instantânea.

Por exemplo, ao executar em minha máquina para o ifconfig tenho a seguinte saida:

lcardoso ~ $ locate ifconfig
/Developer/Documentation/DocSets/com.apple.ADC_Reference_Library.DeveloperTools.docset/Contents/Resources/Documents/documentation/Darwin/Reference/ManPages/man8/ifconfig.8.html
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-ifconfig
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-ifconfig/Portfile
/sbin/ifconfig
/usr/share/man/man8/ifconfig.8.gz
/usr/share/zsh/4.3.4/functions/_ifconfig



Ele usa uma base de dados que contém todos os seus arquivos indexados previamente.
No caso do Mac OS X seu sistema de arquivos é indexado semanalmente por meio do script.
/etc/periodic/weekly/310.locate

Ou seja, no pior caso sua base de dados estará desatualizada em 1 semana.
Mas você pode atualizar a base de dados a qualquer momento executando o script
/usr/libexec/locate.updatedb

Esta operação pode demorar alguns minutos, por isso tenha paciência.

Obs: Não faça isso como root pois iria indexar o sistema de arquivos inteiro mostrando todos os arquivos para qualquer usuário.

[]'s

Leonardo Cardoso

palavras chaves: mac os x locate find buscar localizar
blog comments powered by Disqus