
Eu tenho um arquivo tar e preciso extrair o conteúdo de um diretório para outro diretório.
Assim, por exemplo, o conteúdo pode estar localizado em /home/me/stuff/
e tudo na stuff
pasta deve ser extraído para /extract
. Assim, após a conclusão da extração, tudo o que estava na /home/me/stuff/
pasta arquivada agora estará na /extract
pasta.
Pensamentos?
Responder1
Se entendi o que você está perguntando, parece que com o GNU tar, o seguinte será suficiente:
tar --extract --file in.tar --directory /extract /home/me/stuff --strip 3
Simulando com um arquivo que possui o seguinte conteúdo:
$ tar tf in.tar
home/
home/me/
home/me/stuff/
home/me/stuff/b
home/me/stuff/a
home/foo
E um diretório de saída /tmp/extract
(que deve ser criado previamente), obtemos:
$ find /tmp/extract
/tmp/extract
/tmp/extract/b
/tmp/extract/a
Observe como o arquivo foo
não foi extraído.