Como localizar um caminho?

6

É possível locate um caminho no sistema de arquivos como o que pode ser feito para nomes de arquivos? Por exemplo, eu quero encontrar todos os caminhos no sistema que incluem 'foo / bar', que podem ter o seguinte resultado:

/home/myname/test/foo/bar/hello
/var/www/site/foo/bar

    
por Meysam 13.07.2016 / 07:46

4 respostas

10

Se você não conseguir encontrar o arquivo com o comando abaixo, tente updatedb para atualizar o banco de dados usado pelo comando locate.

locate -r foot/bar/

ou

# locate  "/*/bar/avi"
/foot/bar/avi

comando find também pode fazer isso

find / -path */foot/bar*

find / pesquisará todo o sistema a partir de /

    
por 13.07.2016 / 07:59
3

usando o comando find ,

find . -ipath "*foo/bar*"

ou se você preferir sintaxe regex, então você pode usar,

find . -iregex ".*foo/bar.*"
    
por 13.07.2016 / 08:04
1

Tente:

ls -lR | sed -n 's/foo\/bar/p' 

Possivelmente muito longa saída, eu joguei diretamente em um arquivo

ls -lR | sed -n 's/foo\/bar/p' >> outfile
    
por 13.07.2016 / 07:55
-1

Isso deve fazer o que você quer:

user@machine% find / -print0 | grep -FzZ 'foo/bar'

Você receberá muitas "permissões negadas", a menos que seja executado como root ou esteja sendo executado em seu próprio diretório inicial.

    
por 13.07.2016 / 08:01

Tags