Вернуться   Компьютерный форум > Блоги > Базаров
Оценить эту запись

Архивация файлов из подкаталогов

Запись от Базаров размещена 13.01.2015 в 02:34

Очень удобной возможностью программ PKZIP и ARJ является архивация (упаковка) файлов из подкаталогов указанного каталога. Эта возможность задается с помощью указания следующих режимов:

При указании этих режимов программы архивации ищут архивируемые файлы не только в каталогах, указанных в команде, но и во всех подкаталогах этих каталогов. Здесь под термином "все подкаталоги" понимаются не только подкаталоги, непосредственно входящие в указанные каталоги (т.е. подкаталоги первого уровня), но и подкаталоги этих подкаталогов (т.е. подкаталоги второго уровня), и т.д., т.е. подкаталоги всех уровней вложенности. При этом в архиве сохраняется информация о пути к архивированным файлам.
Извлечение файлов в подкаталоги
При извлечении файлов из архива можно выводить файлы не в один каталог, а в соответствующие подкаталоги указанного в команде каталога (если такие подкаталоги не существуют, то они создаются). Для этого при извлечении файлов необходимо для программы ARJ использовать команду Х (а не Е), а для программы PKUNZIP - режим -D.
Замечание. Программы PKZIP и ARJ по-разному записывают в архиве пути к архивируемым файлам, если в команде запрошена архивация файлов не из текущего каталога. Например, при выполнении команд

для файла C:\DOC\TEST.TXT программами архивации будут запомнены следующие пути:

Чтобы не запутаться, целесообразно при архивации файлов из всех подкаталогов некоторого каталога сделать этот каталог текущим.
Пусть, например, дерево каталогов на диске С: имеет следующий вид:

Если текущий каталог - \DOC, то при выполнении команд

в архивы A:DOC.ZIP и A:DOC.ARJ будут добавляться файлы с расширением имени.ТХТ из каталогов:
C:\DOC
C:\DOC\LETTERS
C:\DOC\PAPERS
C:\DOC\PAPERS\ARCHIVE
C:\DOC\PAPERS\DRAFT
При этом в архивные файлы будут записываться пути к исходным файлам от каталога C:\DOC. Если выполнить любую из команд

то все файлы из каталогов C:\DOC, C:\DOC\LETTERS, C:\DOC\PAPERS, C:\DOC\PAPERS\ARCHIVE и C:\DOC\PAPERS\DRAFT будут извлечены в каталог C:\USER. Таким образом, файлы из разных каталогов будут "свалены в одну кучу". Заметим, что если бы каталога C:\USER не существовало, программа PKUNZIP отказалась бы работать, а программа ARJ выдала бы запрос на создание нового каталога.
А если выполнить любую из команд

то на диске С: будет создан каталог C:\WORK и сохраненные в архиве файлы будут извлечены в соответствующие подкаталоги этого каталога. Таким образом, структура каталогов на диске С: будет следующей

В каталоге WORK будут находится копии файлов из каталога DOC, а в подкаталогах LETTERS, PAPERS, ARCHIVE и DRAFT каталога WORK - копии файлов из соответствующих подкаталогов каталога DOC.
Замечание. Программа ARJ перед созданием каждого каталога выводит запрос "Create directory? [Y/N/A/Q]". На этот вопрос целесообразно ответить А - (Always, т.е. всегда). А еще лучше при вызове программы ARJ задать режим -JYC, чтобы этот запрос вообще не выводился.
Размещено в Без категории
Просмотров 1462 Комментарии 0 Отправить другу ссылку на эту запись
Всего комментариев 0

Комментарии

 

Текущее время: 10:11. Часовой пояс GMT +4. Powered by vBulletin® Version 5.8.9
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.