Eu acredito que isso funcionará:
tar --wildcards --to-stdout -xvf archive.tar.gz './*'
Observe que pode haver problemas com './*'
part: não sei ao certo como exatamente o tar corresponde a caminhos. Obviamente, se você tiver um caminho absoluto no arquivo, isso não corresponderá, mas, novamente, não tenho certeza se apenas '*'
é a melhor opção.
Acredito que algumas implementações de alcatrão aceitarão -O
também / no lugar de --to-stdout
. Não tenho certeza se --wildcards
é exclusivo da implementação do GNU.
Aqui está a versão que evita usar --wildcards
tar -xOvf archive.tar.gz $(tar -tf archive.tar.gz)