Encontrando um arquivo específico em vários subdiretórios

0

Tenho o seguinte problema:

Eu tenho que escrever algo para copiar um arquivo contido no diretório A. O arquivo é único e tem uma extensão específica (.jil). Único problema, o diretório A pode conter um subdiretório B (que pode conter um subdiretório C, ...) e, em seguida, meu arquivo não estará localizado no diretório A, mas em um de seus subdiretórios. / p>

Qual comando posso usar para encontrar este arquivo sem explorar todos os meus diretórios?

    
por user1058398 20.11.2013 / 15:20

1 resposta

2

Essa é, na verdade, a forma como find funciona por padrão. Você poderia simplesmente correr

find A/ -name "*.jil" -exec cp {} target_dir/ \;

O comportamento padrão de find é examinar todos os subdiretórios recursivamente, você pode controlar isso definindo as opções -maxdepth / -midepth :

   -maxdepth levels
          Descend at most levels (a non-negative integer) levels of direc‐
          tories below the command line arguments.  -maxdepth 0
           means only apply the tests and  actions  to  the  command  line
          arguments.
   -mindepth levels
          Do  not apply any tests or actions at levels less than levels (a
          non-negative integer).  -mindepth  1  means  process  all  files
          except the command line arguments.
    
por 20.11.2013 / 15:34

Tags