Як зберегти цілісність папок при стисненні файлів у різних папках


0

У мене є пакетний файл, який працює на наших виділених серверах щодня і стискає файли.

Ось фрагмент пакетного файлу:

%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%

Пакетний файл отримує потрібні мені файли, але всі вони знаходяться в одному каталозі, а не в своїх оригінальних каталогах.

Я намагався, 7z x filename.zipколи витягував файли, але це не дало мені ніяких різних результатів.

Чи потрібно вказувати перемикач при стисканні?

Дякую за допомогу!

редагувати

Я щойно зрозумів, що говорю 7z, щоб цей файл був збережений в архіві так само, як є. Я усвідомлюю, що зараз моє питання справді таке: чи існує спосіб збереження початкової структури папки при стисненні файлів?

Відповіді:


2

Він досить слабкий, але вам доведеться використовувати відносні шляхи без відключення диска або провідного нахилу.
У вашому прикладі %datapath%потрібно мати, "users\johnny\filespec"а не "c:\users\filespec".

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

Збереже структуру папки.

Потім із тієї самої папки, яку ви її застебнули, ви можете розпакувати її. ..

7z x myzip.zip

і 7z поверне його назад зі структурою папки.

Обережно, вам потрібно видалити з тієї ж папки, яку ви накопичували, оскільки папки будуть створені під вашим поточним місцезнаходженням.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.