Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЗ_13_14.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
278.02 Кб
Скачать

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

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

PKZIP — режим —М {можно указывать совместно с режимами -А, —U или -F);

ARJ — режим —D (можно указывать совместно с командами A, U или F) или команда М;

Команда М программы ARJ эквивалентна команде А с режимом -D, она задает добавление файлов в архив с удалением исходных файлов.

Замечания.

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

2. При использовании программы ARJ целесообразно при пересылке файлов в архив указывать также режим — jtl. Он обеспечивает перед удалением исходного файла его сравнение с копией в архиве.

Примеры:

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

ARJ ad myarc — пересылка в архивный файл MYARC.ARJ всех файлов из те­кущего каталога;

ARJ mjtl myarc — пересылка в архивный файл MYARC.ARJ всех файлов из текущего каталога с дополнительным контролем правильности помещенных в архив копий файлов;

PKZIP -mu docfiles *.doc a:\*.doc — пересылка в архивный файл DOCFILES.ZIP всех файлов с расширением .DOC из текущего каталога и из корневого каталога на диске А:, кроме тех, копий которых нет в архиве DOCFILES.ZIP;

ARJ fd docfiles *.doc — пересылка в архивный файл DOCFILES.ZIP новых версий всех файлов с расширением .DOC из текущего каталога.

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

Для извлечения файлов из архивов, созданных программой PKZIP (.ZIP-файлов), используется программа PKUNZIP. А программа ARJ сама умеет извлекать файлы из своих архивов. Форматы команд:

PKUNZIP режимы имя-apxивa [имена-файлов]...

ARJ команда режимы имя-архива (каталог\) (имена-файлов)...

Параметры:

команда — одна буква, которая задает действие, которое должна выпол­нить программа ARJ. Например, Е — извлечение файлов из архива, X — извлечение файлов из архива в соответствующие каталоги и т.д.;

режимы — указываются с предшествующим знаком «-» или «/»; они за­дают или уточняют требуемые от программы действия;

имя-архива — задает имя архива, откуда извлекаются файлы. Если расши­рение у имени архивного файла не указано, подразумевается .ZIP для можно употреблять символы * и ? — в этом случае обрабатывается несколько архивных файлов;

каталог — задает каталог, в который помещаются извлекаемые файлы. Если каталог не указан, подразумевается текущий каталог;

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

После ввода команды программы начинают извлечение файлов из архива. На экране изображаются имена извлекаемых из архива файлов. Заметим, что при указании имен извлекаемых из архива файлов программа PKUNZIP использует символ «/» вместо «\» в качестве разделителя имен каталогов и файлов.

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

PKUNZIP — на экран выводится запрос: имя-файла already exists. Overwrite (y / n / a / r)? (Файл существует. Перезаписать?). Вы можете нажать на одну из клавиш:

(у) — заместить имеющийся на диске файл,

(n) — не извлекать файл из архива,

    1. — всегда замещать имеющиеся на диске файлы (больше за­просов не будет),

(r) — присвоить извлекаемому из архива файлу другое имя;

ARJ — если файл на диске более старый (имеет более раннюю дату последней модификации, чем файл в архиве), на экран выводится запрос: «имя-файла exists. Overwrite [YNAQ] ?». Если файл на диске имеет ту же или более позднюю дату последней модификации, что и файл в архиве, то выводится тот же запрос, но вместо «exists» сообщается «is same or newer». Можно нажать на одну из клавиш:

(у) — заместить имеющийся на диске файл,

(n) — будет вы­дан запрос, в ответ на который можно ввести новое имя файла или сразу на­жать ENTER для пропуска извлечения данного файла,

А — всегда замещать имеющиеся на диске файлы (больше запросов не будет),

Q — окончить рабо­ту программы ARJ.

Замечание. Программа ARJ позволяет не выводить запрос о новом имени фай­ла. Для этого надо указать при ее вызове режим -JYN. При этом, если на запрос о перезаписи файла получен ответ (N), извлечение данного файла из архива не производится.

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

Извлечение

Запрос

PKUNZIP

ARJ

Всех файлов

Без запросов

С запросами

-O

По умолчанию

-JYO

По умолчанию

Новых версий и новых файлов

Без запросов

С запросами

-N

Нет

-U -JYO

- U

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

Без запросов

С запросами

-F

Нет

-F

-F -JYO

Новых файлов

Без запросов

Нет

-N

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

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

запрос — запрос-предупреждение, делаемый перед «затиранием» файла на диске.

Примеры:

1) pkunzip ararchive— извлечение всех файлов из архива A:ARCHIVE.ZIP и помещение их в текущий каталог. Файлы на диске с тем же именем затира­ются без предупреждений;

2) arj e a:archivejyo d:\ — извлечение всех файлов из архива A:ARCHIVE.ARJ в корневой каталог диска D:. Файлы на диске с тем же именем затираются без предупреждений;

3) pkunzip a:archiven — извлечение файлов из архива A:ARCHIVE.ZIP в теку­щий каталог. Если на диске имеется файл с тем же именем, что и в архиве, то файлы на диске с более ранней датой последней модификации затираются без предупреждения, а файлы с той же или более поздней датой остаются без из­менений (извлечение соответствующих файлов из архива не производится);

4) arj e -u a:archive с: — извлечение файлов из архива A:ARCHIVE.ARJ в теку­щий каталог на диске С:. Файлы на диске с такой же или более поздней датой последней модификации не изменяются (извлечение соответствующих фай­лов из архива не производится), а для файлов на диске с более ранней датой, чем у соответствующего файла в архиве, выводится запрос о том, надо ли его затирать;

5) pkunzip a:archivef — обновление из архива A:ARCHIVE.ZIP версий файла из текущего каталога. Из архива извлекаются только более свежие версии тех файлов, которые уже имеются в текущем каталоге. Никаких запросов при этом на экран не выводится, старые версии файлов затираются без преду­преждения;

6) arj en a:archive с: — извлечение новых файлов из архива A:ARCHIVE.ARJ в текущий каталог на диске С:. Если для какого-либо файла из архива в теку­щем каталоге диска С: уже есть файл с таким именем, то этот файл из архива не выводится (даже если файл на диске старее его).

Присвоение другого имени извлекаемому файлу.

Программа ARJ предо­ставляет еще один способ обработки конфликтов имен при извлечении файлов из архива. При указании режима -М2 программа ARJ при наличии на диске файла с тем же именем, что у извлекаемого из архива файла, присваивает извлекаемому из архива файлу другое имя. Для этого она устанавливает у файла расширение .000 (если такой файл тоже существует, то .001 и т.д.).