Eu acho que a opção C para tar deve ocorrer mais cedo no comando
tar -cvf - -C /tmp path/to.myfile
Eu imagino que você possa baixar, compilar e instalar o GNU tar em seu ~ / bin, o que pode tornar as coisas um pouco mais fáceis.
Existe uma maneira de extrair um único arquivo de um arquivo tar para um diretório específico?
Na verdade, estou lidando com um arquivo .tgz , estou tentando algo assim:
gunzip -c mytargzfile.tgz | tar xvf - path/to/myfile -C /tmp
Para extrair uma entrada de arquivo chamada path/to/myfile in mytargzfile.tgz to /tmp directory.
Mas este comando falha quando o tar reclama dizendo que não pode encontrar o arquivo chamado -C e /tmp no arquivo. Eu tentei mudar a opção -C antes de xvf e também não ajudou.
Note que estou usando o AIX e o KSH
Esse comando funcionou bem para mim, como você disse que tentou com o -C first: tar -C /tmp -xvf . Talvez seja um bug na sua versão do tar?
Um pouco desajeitado, mas sempre tem:
cd /tmp
gunzip -c /path/to/mytargzfile.tgz | tar xvf - path/to/myfile
Eu recomendo instalar o GNU tar para você. Vale a pena apenas para as opções -j e -z se nada mais, e é uma das primeiras coisas que eu sempre faço em uma nova conta Unix.