Архивация данных 2

Архиватор ZIP



План:



Введение



Архивный файл



Ключи и команды архиватора ZIP.



Архиватор ZIP for Windows



Заключение



Список используемой литературы



Введение:  При эксплуатации компьютера по самым разным причинам возможны порча или потеря информации на магнитных дисках. Это может произойти из-за физической порчи магнитного диска, неправильной корректировки или случайного уничтожения файлов, разрушения информации компьютерным вирусом и т.д. Для того чтобы уменьшить  потери в таких ситуациях, следует иметь архивные копии используемых файлов и систематически обновлять копии изменяемых файлов.



            Для копирования файлов можно, разумеется, использовать команды COPY или XCOPY. Но, например для  копирования файлов с жесткого диска емкостью 28 Мбайт необходимо 20 дискет стандартного формата (по 1.46 Мбайт). В таком большом количестве дискет даже разобраться довольно трудно, поэтому трудоемкость создания и обновления архива будет весьма значительной. Поэтому для создания архивов употребляются специализированные программы. Их можно разделить на два класса: программы упаковщики (архиваторы) и программы резервного копирования. В реферате будут рассмотрены только программы-упаковщики, так как ZIP относиться именно к ним.



Архивный файл.



Архивный файл представляет собой набор из одного или нескольких файлов, помещенных в сжатом виде в единый файл, из которого их можно при необходимости извлечь в первоначальном виде. Архивный файл содержит оглавление, позволяющее узнать, какие файлы содержаться в архиве. В оглавлении архива для каждого содержащегося в нем файла храниться следующая информация:



имя файла;



сведения о каталоге, в котором содержится файл;



дата и время последней модификации файла;



размер файла на диске и в архиве;



код циклического контроля для каждого файла, используемый для проверки целостности архива;



Определить с помощью какой программы был заархивирован 



тот или другой архивный файл, можно при помощи расширения. 



Например: game.rar – заархивирован при помощи архиватора RAR.



                         game.arj - заархивирован при помощи архиватора ARJ.



                         game.zip - заархивирован при помощи архиватора ZIP.



            Невольно возникает вопрос, зачем столько архиваторов (а их гораздо больше) и все для одной лишь цели – сжать объем файла. 



Разные программы отличаются форматом архивных файлов, скоростью работы, степенью сжатия файлов при помещении в архив, удобством использования.



Ключи и команды архиватора ZIP.



             Существует два основных файла программы : 



PKZIP- программа помещающая файлы в архив



PKUNZIP- программа извлекающая файлы из архива.



Программы PKZIP/PKUNZIP имеют большое количество функций, выбор нужных функций выполняется в командной строке при вызове программ. Задание функций программ PKZIP/PKUNZIP осуществляется  только с помощью указания режимов. Режимы могут указываться в любом месте командной строки после имени программы, они задаются  либо с предшествующим знаком “-”, либо с предшествующим знаком “/”.



Помещение файлов в архив.



При помещении файла в архив используется следующий формат:



PKZIP  режимы  имя архива    (имена файлов)



Режимы- указываются с предшествующим знаком “-” или “/”, они задают или уточняют требуемые от программы архивации действия;



Имена файлов- задают файлы, включаемые в архив. При задании имен файлов можно использовать символы * и ?. Если имена файлов не заданы, то подразумевается все файлы из текущего каталога. 



            Примечание: символ * - определяет что будут использованы любые символы в том месте где стоит звездочка.



                        Пример:



game.* - означает что будут заархивированы все файлы с именем    game (game.exe, game.sav, game.cfg)



ga*.sav – имеется ввиду файлы с первыми двумя буквами “ga” в имени файла и расширением sav.  (game.sav, game01.sav, game02.sav).



Символ ? - определяет что будет использован любой символ в том месте где стоит вопрос.



                        Пример:



game.?a?- все файлы с именем game и  расширением в котором в середине стоит буква “a” (game.sav, game.bat ...)



game???.*- все файлы с именем в котором первые четыре буквы  game и любыми другими символами после четвертой буквы + любое расширение.



После ввода команды программы-упаковщики начинают выполнять запрошенные действия. На экране изображаются имена помещаемых в архив файлов. При сжатии каждого файла выводиться процент обработанной части файла. После окончания сжатия каждого файла напротив его имени сообщается о степени сжатия. Например, при упаковке файла pkzip.exe  на экране появляется надпись:



            Adding: PKZIP.EXE     Deflating (36%), done.



            Задание степени сжатия.



По умолчанию программа  PKZIP обеспечивает достаточно большую скорость работы и близкую к максимальной степень сжатия. Но при желании можно получить максимальную (на несколько процентов большую) и наименьшую (быструю)  степень сжатия. С ключом максимальной степени сжатия программа работает медленнее обычной, а при ключе наименьшей степени сжатия файлов наоборот, быстрее.



                        Ключи:



“-ex” – максимальная степень



“-en” – средняя (обычная) степень



“-es” – наименьшая степень



Режимы выбора архивируемых файлов.



Программа PKZIP имеет три основных режима помещения файлов в архив:



            Add – добавление в архив всех файлов;



            Update – добавление в архив новых файлов;



            Freshen – добавление новых версий имеющихся в архиве 



файлов.



Эти режимы имеют следующие особенности:



в режиме добавления (Add) в архивный файл добавляются все указанные в команде файлы;



в режиме добавления новых файлов (Update) в архивный файл добавляются те файлы, у которых либо нет копий в архиве, либо эти копии имеют более раннюю дату, чем у файла. Задание этого режима позволяет предотвратить затирание более новых версий в архиве;



в режиме обновления версий файлов (Freshen) в архив добавляются новые версии тех файлов, которые уже имеются в архиве. Иначе говоря, в архив добавляются те файлы, копии которых уже находятся в архиве, но имеют более раннюю дату, чем у соответствующего файла на диске. Этот режим позволяет добиться того, чтобы архивный файл содержал наиболее свежие версии своих файлов.



Задание этих режимов осуществляется следующим образом:



Add – по умолчанию (или “–а”)



Update – режим “-u”



Freshen – режим “-f”



Примеры:



Pkzip game — добавление в архивный файл game  всех файлов из текущего каталога;



Pkzip –u a:myarc — обновление архивного файла a:myarc.zip. В архивный файл добавляются файлы из текущего каталога, однако если какой-либо файл уже имеется в архиве и дата копии файла в архиве более поздняя, чем у файла из текущего каталога, то такой файл не добавляется в архив, и в архиве сохраняется более поздняя версия файла;



Pkzip –f a:myarc b:*.* — добавление в архив a:myarc новых версий файлов этого архива из корневого каталога диска В:





Пересылка файлов в архив



            Очень часто требуется не копировать, а пересылать файлы в архив. Иначе говоря, те файлы, которые были успешно добавлены в архив, должны удаляться. Для пересылки используются следующие режимы:



PKZIP - режим –M (можно указывать совместно с режимами –a 



–u –f)



Замечания:



Если при архивации файлов возникает ошибка, то исходные файлы не уничтожаются.



Использование пересылки файлов в архив позволяет существенно сократить место на диске, занимаемое файлами. Часто имеет смысл хранить редко  употребляемые программы и данные в виде архивного файла, а при необходимости их использования – извлекать из архива.



Примеры:    



Pkzip –m myarc — пересылка в архивный файл MAYARC.ZIP всех файлов из текущего каталога;



            Pkzip –m –u docfiles *.doc a:*.doc — пересылка в архивный файл docfiles.zip всех файлов с расширением .doc из текущего каталога и из корневого каталога на диске А: кроме тех, копий которых нет в архиве docfiles.zip.







Извлечение файлов из архива



            Как упоминалось ранее, для извлечения файлов из архивов, созданных программой PKZIP, используется программа PKUNZIP.



            Программа PKUNZIP имеет следующий формат вызова:



                        PKUNZIP     режимы       имя архива     (имена файлов)



            После ввода команды программы архивации начинают извлечение файлов из архива. На экране изображаются имена извлекаемых из архива файлов.



            Режимы замещения существующих на диске файлов



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



PKUNZIP: (W18) Warning! PKUNZIP.EXE already exists.  Overwrite (y/n/a/r)?         (Файл существует. Перезаписать?)



При нажатии на одну из клавиш : Y — заместить имеющийся файл на диске, N — не извлекать файл из архива, A — всегда замещать имеющиеся на диске файлы(больше запросов не будет), R — присвоить извлекаемому из архива файлу другое имя.Извлечение 	Запрос 	PKUNZIP 

Всех файлов 	Без запросов С запросами 	-О По умолчанию 

Новых версий и новых файлов 	Без запросов С запросами 	-N Нет 

Новых версий файлов 	Без запросов С запросами 	-F Нет 

Новых файлов 		Нет 





Здесь извлечение новой версии файла – ситуация, когда для извлекаемого из архива файла в том каталоге, куда он должен быть помещен, имеется файл с тем же именем, но файл в архиве имеет более позднюю дату последней модификации, чем файл с тем же именем на диске; извлечение нового файла- ситуация, когда для извлекаемого из архива файла в том каталоге, куда он должен  быть помещен, нет файла с тем же именем; запрос- запрос – предупреждение, делаемый перед “затиранием” файла на диске



            Примеры:



Pkunzip a:archive –o — извлечение всех файлов из архива a:ARCHIVE.ZIP и помещение их в текущий каталог. Файлы на диске с тем же именем затираются без предупреждений.



            



            Pkunzip a:archive – n — извлечение всех файлов из архива 



a:archive.zip в текущий каталог. Если на диске имеется файл с тем же именем, что и в архиве, то файлы на диске с более ранней датой последней модификации затираются без предупреждения, а файлы с той же или более поздней датой остаются без изменений (извлечение соответствующих файлов из архива не проводиться);



Pkunzip a:archive –f      обновление из архива a:archive.zip  версий файла из текущего каталога. Из архива извлекаются только более свежие версии файлов, которые уже имеются в текущем каталоге. Никаких запросов при этом на экран не выводится, старые версии файлов затираются без предупреждения.



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



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



            Pkzip   -режим -rp



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



            При извлечении файлов из архива можно выводить файлы не в один каталог, а в соответствующие подкаталоги указанного в команде каталога (если такие подкаталоги не существуют, то они создаются).



Просмотр оглавления архива



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



            Формат команды:



                        Pkunzip –v     имя-архива       



Пример:



                        Pkunzip  -v  arhiv.zip