Infelizmente, tar
sempre descompactará o caminho completo arquivado, mesmo quando você solicitar apenas um único recurso dentro de um caminho de subpasta. por exemplo:
$ tar -x abc/a -zvf abc.tar.gz
descompactará apenas a subpasta a , mas o diretório pai abc ainda será criado.
Do diretório de destino que você pode fazer
$ for d in 'ls abc'; do cp -rf abc/$d/* ./$d/; done
para copiar as pastas de arquivamento em pastas pré-existentes com o mesmo nome na pasta atual Target
ou simplesmente
$ cp -rf abc/* ./
para criar todas as pastas de arquivo em ~/Target
. Se uma pasta chamada, digamos, 'foo' existir em abc
e Target
, o conteúdo de abc/foo
será copiado para Target/foo
. Esteja ciente, no entanto, que no nível de arquivo abc/foo/bar.txt
sobrescreverá Target/foo/bar.txt
sem aviso ou aviso.