Eu tenho essa estrutura de arquivo:
tree .
.
├── AAA
│ ├── a1.txt
│ ├── a2.txt
│ └── a3.txt
├── AAA.tar.gz
├── BBB
│ ├── b1.txt
│ ├── b2.txt
│ └── b3.txt
├── BBB.tar.gz
├── CCC
│ ├── c1.txt
│ ├── c2.txt
│ └── c3.txt
├── CCC.tar.gz
└── tar_test.tar.gz
O arquivo de listagem mostra corretamente:
tar tf tar_test.tar.gz
AAA.tar.gz
BBB.tar.gz
CCC.tar.gz
Mas minhas tentativas de listar arquivos internos falham...
tar xfO tar_test.tar.gz | tar ztf -
AAA/
AAA/a1.txt
AAA/a3.txt
AAA/a2.txt
O que preciso mudar para ter:
tar [magic1] tar_test.tar.gz | tar [magic2]
AAA/
AAA/a1.txt
AAA/a3.txt
AAA/a2.txt
BBB/
BBB/b1.txt
BBB/b3.txt
BBB/b2.txt
CCC/
CCC/b1.txt
CCC/b3.txt
CCC/b2.txt
Obrigada!
Você
tar ztf -
espera apenas um arquivo. Você precisa de um desses processos por arquivo. Isso pode ser feito com a--to-command
opção do lídertar
:De
man 1 tar
:O truque é que cada arquivo extraído pelo líder
tar
será canalizado para sua própria instância separadaCOMMAND
de . Dessa forma, você executa quantostar ztf -
processos forem necessários.