Acho que isso deve ser feito:
tar -xzf file.tar.gz -C ~/locationX folder1 -C ~/locationY folder2
A opção -C
significa mudar para o diretório especificado antes de fazer a extração. Especificar argumentos de nome de arquivo após o nome do arquivo tar restringe a extração para apenas esses arquivos ou diretórios. E você pode repetir este -C
pendurado diretórios como você faz.
Observe que isso fará as extrações em subdiretórios: Folder1
entrará em pathX/Folder1
, Folder2
entrará em folderY/Folder2
. Você pode evitar isso usando a opção --strip-components
:
tar -xzf file.tar.gz -C ~/locationX --strip-components=1 folder1 \
-C ~/locationY --strip-components=1 folder2
Além disso, se os prefixos reais no arquivo tar forem ./folder1
e ./folder2
, como é provável se você criou o arquivo tar com tar -czf file.tar.gz .
, será necessário incluir o prefixo ./
no nome do arquivo. argumentos e mude para --strip-components=2
.