Procura ficheiros na subpasta e exporta os resultados para o ficheiro

1

Eu tenho uma pasta com centenas de subpastas. Eu preciso localizar recursivamente dentro das subpastas aqueles que não têm certos arquivos dentro (por exemplo * ch.pdf ou * .jpg) e exportar os resultados para um arquivo txt. Thx antecipadamente

    
por Celso.Baia 05.02.2013 / 13:46

1 resposta

2

Aqui você está:

find <folder> -type d -exec bash -c "ls {} | grep -i \".*ch\.pdf$\|.*\.jpg$\" > /dev/null || echo {}" \; > <target file>

Breve explicação:

  1. listar todas as pastas dentro de < pasta > recursivamente
  2. para cada pasta encontrada - liste todos os arquivos e verifique se há algum que termine com "ch.pdf" ou ".jpg". Nós não estamos interessados nesses arquivos, então redirecione a saída para / dev / null.
  3. Se não houver arquivos encontrados, imprima o caminho da pasta relativo com echo .
  4. redirecionar os resultados de find para < arquivo de destino >
por Pavel A 05.02.2013 / 14:00