Para agregar un prefijo de directorio cómodamente, use un separador diferente al /
del --transform
argumento, por ejemplo, +
o ,
como en la respuesta de Andy.
Entonces, para un caso más simple, tiene un montón de archivos en el directorio actual y no desea crear una tarbomb .
tar czf logs_nightly.tar.gz --tranform 's+^+logs_nightly/+' *.log
La sintaxis es s+search+replace+
, y ^
simplemente coincide con el inicio del nombre del archivo.
Y ahora, solo para responder al OP, bueno, puede evitar copiar todo su directorio /tmp
ejecutando:
mv $MYPATH $VERSION
tar cjf archive.tar.bz2 $VERSION
mv $VERSION $MYPATH
Alternativamente:
ln $MYPATH $VERSION
tar cjf archive.tar.bz2 $VERSION
(enlace duro, evita problemas con enlaces simbólicos)
Los dos últimos se incluyeron por valor de entretenimiento, yo mismo me quedaría con la respuesta de toro2k.
tar cjf archive.tar.bz2 $MYPATH
?