Como posso pesquisar e localizar uma pasta do sistema

1

Arquivos & amp; Folders Lens pode ser usado para localizar documentos do usuário facilmente, mas parece ignorar arquivos e pastas do sistema.

Como posso pesquisar & amp; localizar arquivos e pastas do sistema?

(Por exemplo, eu quero localizar uma pasta chamada .metadata, que contém algumas configurações do meu IDE do Eclipse, e sei que essa pasta está lá no sistema de arquivos em algum lugar, mas não sei onde)

Eu uso 12.04 LTS

    
por DUKE 09.07.2012 / 19:12

2 respostas

3

Você pode usar o comando find para localizar pastas com o parâmetro -type d . Aqui estão alguns exemplos:

#Search Root ( / ) folder for a folder called www

nits@excalibur:~$ sudo find / -name www -type d
/media/6E5E0E255E0DE6A5/cygwin/srv/www
/media/6E5E0E255E0DE6A5/cygwin/usr/share/doc/ImageMagick-6.4.0.6/www
/media/6E5E0E255E0DE6A5/cygwin/usr/share/doc/GraphicsMagick/www
/media/6E5E0E255E0DE6A5/cygwin/var/www
/media/6E5E0E255E0DE6A5/wamp/www

#Search current folder for a folder which start either Capital/lower-case M

nits@excalibur:~$ find . -iname m* -type d
./.local/share/telepathy/mission-control
./.config/menus
./.mozilla/firefox/vwfuj46p.default/minidumps
./.cache/indicators/messages
./.cache/chromium/Default/Media Cache
./Music
./.macromedia/Flash_Player/macromedia.com
./.jedit/macros
./.jedit/modes
./.gconf/apps/metacity

Nos exemplos acima, você teria notado que apenas os diretórios sem subdiretórios neles estão listados. Você pode usar mindepth/maxdepth para definir a profundidade do nível que precisa ser percorrido.

#Search current directory for directories starting with either capital/lower-case M but only are present in the current directory

nits@excalibur:~$ find . -maxdepth 1 -iname m* -type d
./Music

# Traverse two levels (current level and one level under) in the current directory for directories starting with either capital/lower-case M:

nits@excalibur:~$ find . -maxdepth 2 -iname m* -type d
./.config/menus
./Music
./.jedit/macros
./.jedit/modes

Há uma grande quantidade de opções diferentes para pesquisar diretórios e arquivos, bem como usar find , você pode consultar a página de manual acessível por man find para todas as opções e como usá-la. Além disso, embora find seja mais lento que locate , não é necessário que updatedb atualize um DB para pesquisar, porque a pesquisa é realizada em tempo real.

    
por Nitin Venkatesh 09.07.2012 / 21:59
0

Use o comando localizar . Ele usa um banco de dados que é atualizado via updatedb . Eu tenho um cron job que executa updatedb a cada hora para que o banco de dados esteja atualizado.

    
por Tom 09.07.2012 / 19:24