'find -path' explicado

9

O comando find fornece a opção -path . Eu entendo que é preciso definir onde começar a procurar [comumente conhecido como "caminho"]. Tentando descobrir para que é usado, encontrei muitos exemplos usando find -path -prune para excluir alguns caminhos.

Pergunta : Uma explicação sobre o que faz o find -path ; para que esta opção é usada.

Por favor, note: Parece claro para mim, mas depois não funciona como eu imaginei que seria. Eu trabalhei com the man e info páginas, mas não entendi o significado completo dessa opção.

EDIT Pelo que entendi: find /some/path -name stuff deve começar a procurar por "coisas", iniciando no diretório "path" que é um subdiretório de "some". Trabalho. Mas então, o que a opção -path define? Definições incluindo frases como

do not treat / or . specially

não ajuda muito e é ainda mais confuso.

    
por erch 01.07.2013 / 20:28

2 respostas

5

-path não (re) define o caminho inicial. Refere-se à combinação do caminho inicial e o caminho relativo do objeto examinado atualmente.

Você pode por isso, por exemplo encontre todos os arquivos dentro de um subdiretório src não importa em qual nível.

"não tratar / ou especialmente" significa que * pode corresponder a ambos os nomes de arquivos, incluindo a extensão e em subdiretórios: [...]/file* corresponderia a ambos /file.txt e /files/foo.bar

    
por 01.07.2013 / 21:19
11

É usado para globbing o caminho atual inteiro . Se você tiver -path '*bin/*rch' e estiver atualmente vendo /sbin/ausearch , ele corresponderá.

    
por 01.07.2013 / 20:39

Tags