zip / tar /? arquivos com parâmetro de profundidade

5

Eu gostaria de compactar arquivos de um diretório, mas apenas para uma determinada profundidade. No exemplo abaixo, gostaria de incluir arquivos até uma profundidade de 3:

dir0/
 dir1/
     dir2 -> subdir1, subdir2
     dir3 ->
     file1

Se eu pudesse emitir:

zip --depth 3 -r output dir0

Eu teria a seguinte saída:

dir0/dir1/file1

Como posso conseguir isso? Devo usar o tar, ou existe alguma outra ferramenta comum no Linux?

    
por Gadolin 18.10.2010 / 22:36

1 resposta

6

Use find com -maxdepth para limitar a profundidade de percurso e use a opção da ferramenta para obter nomes de arquivos de stdin, ou xargs ou substituição de comandos.

find ... -maxdepth 3 ... | zip -@ ...
    
por 18.10.2010 / 22:42