¿Cómo mantengo la integridad de la carpeta al comprimir archivos en diferentes carpetas?

¿Cómo mantengo la integridad de la carpeta al comprimir archivos en diferentes carpetas?

Tengo un archivo por lotes que se ejecuta en nuestros servidores dedicados todos los días y comprime los archivos.

Aquí hay una parte del archivo por lotes:

%SUBDIR%7z a -tzip %fullname%  %datapath%\*.txt >>%LOGFILE%
%SUBDIR%7z a -tzip %fullname%  %datapath%\spoolq.q >>%LOGFILE%
%SUBDIR%7z a -tzip %fullname%  %datapath%\vblib\shared\settings.cfg >>%LOGFILE%
%SUBDIR%7z a -tzip %fullname%  %datapath%\sssusers.d >>%LOGFILE%
%SUBDIR%7z a -tzip %fullname%  %datapath%\#library\*prt.cfg >>%LOGFILE%
%SUBDIR%7z a -tzip %fullname%  %datapath%\#library\printer.txt >>%LOGFILE%
%SUBDIR%7z a -tzip %fullname%  %datapath%\#library\netuse.text >>%LOGFILE%
%SUBDIR%7z a -tzip %fullname%  %datapath%\*.cfg >>%LOGFILE%

El archivo por lotes obtiene los archivos que quiero, pero todos están en el mismo directorio y no en sus directorios originales.

Lo intenté 7z x filename.zipcuando extraje los archivos pero no me dio ningún resultado diferente.

¿Tengo que especificar un modificador al comprimir?

¡Gracias por la ayuda!

editar

Me acabo de dar cuenta de que le estoy diciendo a 7z que coloque ese archivo en el archivo tal como está. Ahora me doy cuenta de eso, así que mi pregunta realmente es: ¿hay alguna forma de mantener la estructura de carpetas original al comprimir los archivos?

Respuesta1

Es bastante débil, pero debes usar rutas relativas sin unidad ni barra invertida inicial.
En su ejemplo, %datapath%es necesario tener "users\johnny\filespec"en lugar de "c:\users\filespec".

Cd \
7z a –tzip myzip.zip users\johnny\tmp\tmp2\TMP2.TXT

Almacenará la estructura de carpetas.

Luego, desde la misma carpeta donde lo comprimiste, puedes descomprimirlo con . ..

7z x myzip.zip

y 7z lo devolverá con la estructura de carpetas.

Tenga cuidado, debe descomprimirlo desde la misma carpeta que comprimió porque las carpetas se crearán en su ubicación actual.

información relacionada