Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

Операционная система OS/2 Warp

© Александр Фролов, Григорий Фролов
Том 20, М.: Диалог-МИФИ, 1993, 271 стр.

[Назад] [Содеожание] [Дальше]

4.3. Работа с файлами

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

ATTRIB

Назначение команды ATTRIB в IBM OS/2 такое же, как и в DOS - просмотр и изменение атрибутов файлов. С помощью этой команды вы можете установить или сбросить биты атрибутов, делающие файлы только читаемыми, скрытыми, системными. Можно также установить или сбросить бит архивирования.

Синтаксис команды приведен ниже:

ATTRIB [Ключи] Путь_к_файлу [/S]

В качестве ключей вы можете использовать символы "R", "S", "H" или "A", каждый из которых отвечает за свой бит атрибутов:

Ключ Бит атрибутов, который ему соответствует
R Только читаемый файл
S Системный файл
H Скрытый файл
A Файл был архивирован

Перед ключом вы должны указать символ "+" или "-". В первом случае соответствующий бит атрибутов устанавливается, во втором - сбрасывается.

В имени файла допускается указывать символы образцов "*" и "?", поэтому команда ATTRIB способна изменять атрибуты сразу для всех файлов в каталоге.

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

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

BACKUP

Команда BACKUP предназначена для выгрузки содержимого диска на дискеты или другой диск (например, магнитооптический) с целью создания резервной копии. В дальнейшем содержимое диска может быть восстановлено при помощи команды RESTORE.

Отметим, что команда BACKUP выгружает не только файлы, но и расширенные атрибуты, связанные с файлами или каталогами.

Синтаксис команды BACKUP приведен ниже:

BACKUP Путь_к_файлам Устр_для_выгрузки Параметры

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

backup c:\*.* a:
backup c:\source\*.* f:
backup d:\DataBase\customers.db e:

Для команды BACKUP вы можете указать семь параметров:

Параметр Описание
/L:Имя_файла Указав параметр /L, можно потребовать от команды BACKUPBACKUP создать журнал выгрузки. По умолчанию журнал создается в файле backup.log, который размещается в корневом каталоге выгружаемого устройства. Указав параметр Имя_файла, вы можете задать для файла журнала другое имя
/D:мм-дд-гг С помощью этого параметра можно указать, что требуется выгружать только те файлы, которые были изменены после даты мм-дд-гг (мм - номер месяца, дд - число, гг - последние две цифры года)
/T:чч-мм-сс Параметр позволяет выгружать только такие файлы, которые были изменены после заданного времени. Этот параметр обычно используется вместе с предыдущим
/M Выгрузка только таких файлов, которые изменились с момента предыдущей выгрузки
/A Добавление выгружаемых файлов к выгруженным ранее файлам. При использовании этой команды старые файлы не стираются
/F:xxx Если файлы выгружаются на дискеты, вы можете выполнять предварительное форматирование дискет. При этом в параметре /F вместо символов xxx необходимо указать формат дискеты:360 для дискет емкостью 360 Кбайт;720 -"- 720 Кбайт; 1200 -"- 1200 Кбайт;1440 -"- 1440 Кбайт;2880 -"- 2880 Кбайт
/S Выгрузка содержимого подкаталогов

COMP

Эта команда предназначена для сравнения содержимого двух файлов. При ее запуске вы должны указать два параметра - пути к сравниваемым файлам:

COMP c:\first.dat d:\back\second.dat

В именах файлов можно использовать символы "*" и "?".

COPY

Команда COPY, как и следовало ожидать, выполняет копирование файлов (а также комбинирование нескольких файлов в один). Она очень похожа на своего "близнеца" из DOS, однако дополнительно позволяет указывать параметр /F. Если указан этот параметр, то при невозможности копирования расширенных атрибутов на выходное устройство выдается предупреждающее сообщение. Таким образом, может быть предотвращена потеря расширенных атрибутов.

Приведем несколько примеров использования этой команды:

copy c:\config.sys c:\back\config.sys
copy datafile.dat /B LPT1
copy d:\exe\*.* a: /F

В первом примере мы создаем резервную копию файла config.sys (если вы ее еще не сделали, займитесь этим сейчас).

Вторая команда пересылает на принтер файл datafile.dat, подготовленный как набор команд для принтера (при печати в файл). При этом указывается параметр /B, необходимый, для того чтобы копирование выполнялось в двоичном режиме.

И, наконец, третья команда копирует все файлы из каталога d:\exe на дискету, проверяя при этом возможность копирования расширенных атрибутов.

DEL

С помощью команды DEL вы можете удалить один или несколько файлов, указав их имена. При этом можно использовать символы образцов "*" и "?", например:

del c:\games\*.*
del c:\tmp\*.bak d:\oldfile.dat

Команда DEL не может стереть скрытые или системные файлы. Поэтому если вам нужно выполнить такую операцию, необходимо сбросить соответствующие биты атрибутов при помощи команды ATTRIB, описанной нами выше. С помощью команды DEL вы также не сможете удалить каталоги.

Дополнительно для команды DEL можно задать три параметра, описанных ниже:

Параметр Описание
/P Если указать этот параметр, то при удалении нескольких файлов команда будет запрашивать подтверждение для каждого файла. При этом вы сможете отказаться от удаления некоторых файлов
/N Этот параметр удобно использовать в пакетных файлах. Он отменяет выдачу предупреждающего сообщения и запроса на удаление содержимого каталога
/F Если удалить файлы с параметром /F, их будет невозможно восстановить командой UNDELETEUNDELETE. Вы можете использовать этот параметр при удалении файлов, содержащих конфиденциальную информацию. При этом никто не сможет получить к ним доступ, просто восстановив файлы командой UNDELETE

ERASE

Команда ERASE является синонимом команды DEL.

DIR

Команда DIR вам хорошо известна по операционной системе DOS. Она позволяет просматривать содержимое каталогов.

Приведем синтаксис команды DIR:

DIR [Путь_к_каталогу] [Параметры]

Если путь к каталогу не указан, команда отобразит содержимое текущего каталога.

Перечислим и кратко опишем параметры команды DIR:

Параметр Описание
/W Отображение списка файлов и каталогов в широком формате. Этот параметр удобен, если в каталоге находится много файлов
/F Отображение полного имени для каждого файла. Этот параметр несовместим с предыдущим
/P Временная пауза перед выдачей очередной порции информации. Для продолжения просмотра после паузы необходимо нажать любую клавишу
/N Отображение расширенной информации о файлах для устройств с файловой системой FATFAT. Если указан этот параметр, то отображаются параметры файлов, присущие файловой системе HPFSHPFS
/A:Атрибут Отображаются только файлы с заданным атрибутом. Например, если указан параметр /A:S, отображаются только системные файлы. Если же перед обозначением атрибута указать символ "-", то будут отображены все файлы, кроме имеющих заданный атрибут. Например, при использовании параметра /A:-S будут показаны все файлы, кроме системных
/B Выдача укороченного списка файлов и каталогов без заголовка и итоговой информации
/O:Сортировка Параметр позволяет задать порядок сортировки имен файлов и каталогов при выводе:N в алфавитном порядке;-N в обратном алфавитном порядке;E в алфавитном порядке по расширению имени;-E в обратном алфавитном порядке по расширению имени;D по дате и времени;-D по дате и времени в обратном порядке;S по размеру;-S по размеру в обратном порядке;G каталоги располагаются перед файлами;-G каталоги располагаются после файлов
/S Отображение всех файлов с указанным именем в заданном каталоге и его подкаталогах
/L Отображение имен файлов и каталогов строчными буквами

Ниже мы привели результат работы команды DIR для диска с файловой системой HPFS:

Volume in drive D has no label.
The Volume Serial Number is 668B:6814.
Directory of D:\

 5-15-95  10:29p <DIR>     0  .
 5-15-95  10:29p <DIR>     0  ..
 5-25-95   4:21p <DIR>     0  CPPBETA
 5-15-95  11:59p <DIR>     1020  FC
 6-09-95   6:39p   5153    0  hpfstree.ncd
 6-07-95   5:12p <DIR>     0  IBMCOM
 6-07-95   5:13p <DIR>     980  IBMLAN
 6-07-95   5:15p   256     0  IBMLVL.INI
 5-24-95   4:50p <DIR>     0  IBMWORKS
 6-07-95   5:12p <DIR>     441  MPTN
 6-07-95   5:14p <DIR>     0  MUGLIB
 5-16-95   4:09p <DIR>     0  NortonForOS2
 5-16-95   4:06p <DIR>     985  os2ut
 6-08-95   2:39p <DIR>     0  P2P
 5-15-95  11:56p <DIR>     433  pmjpeg
 5-18-95   3:40p <DIR>     0  S3dram
 5-18-95   3:49p <DIR>     0  S64
 6-17-95  12:21p <DIR>     0  Temp
 6-09-95   7:12p <DIR>     0  Warp3 Backup
       19 file(s)       3858 bytes used
                   121669120 bytes free

Обратите внимание, что используются имена длиной больше 8 символов, а имя "Warp3 Backup" содержит пробелы.

EAUTIL

Дополнительно к обычным атрибутам, таким как "Только читаемый файл" или "Системный файл" файловая система IBM OS/2 создает для файлов расширенные атрибуты. Однако при переносе файла из одного компьютера в другой не всегда можно сохранить расширенные атрибуты. Типичный пример такой ситуации - передача файла через модем и их прием в операционной системе DOS.

Для решения этой проблемы в IBM OS/2 имеется команда EAUTIL, с помощью которой можно переписать расширенные атрибуты файла в отдельный файл. После этого вы можете передать два файла - исходный файл без расширенных атрибутов и файл, содержащий расширенные атрибуты. Впоследствии с помощью той же команды EAUTIL можно добавить к файлу расширенные атрибуты, восстановив его исходный вид.

Приведем синтаксис команды EAUTIL:

EAUTIL Файл_Данных [Файл_Атрибутов] [Параметры]

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

Перечислим параметры команды EAUTIL:

Параметр Описание
/S Если указан этот параметр, команда EAUTILEAUTIL переносит расширенные атрибутырасширенные атрибуты из файла данных в файл атрибутов
/R Используется вместе с предыдущим параметром. Если указан параметр /R, при переносе расширенных атрибутов файл атрибутов перезаписывается
/J Добавление расширенных атрибутов из файла атрибутов в файл данных. Этот параметр несовместим с параметрами /S и /R
/O Используется вместе с параметром /J для замещения существующих расширенных атрибутов файла данных теми, что находятся в файле атрибутов
/M Используется вместе с параметром /J. Если указан этот параметр, расширенные атрибутырасширенные атрибуты из файла атрибутов добавляются к тем, что уже находятся в фале данных
/P Если указан этот параметр, операции переноса атрибутов не затрагивают исходных файлов (т. е. при переносе расширенных атрибутов последние не удаляются из файла данных, а при добавлении расширенных атрибутов файл атрибутов не удаляется)

Приведем простой пример. В каталоге os2 есть файл tutorial.exe. Для выделения из него расширенных атрибутов сделайте текущим каталог os2 и введите команду:

eautil tutorial.exe tutorial.ea /P /S

В результате в текущем каталоге будет создан файл tutorial.ea, содержащий расширенные атрибуты.

Для замещения расширенных атрибутов в файле tutorial.exe введите следующую команду:

eautil tutorial.exe tutorial.ea /P /J /O

FIND

С помощью команды FIND вы можете выполнить поиск текстовой строки в файле, например:

find "SET" config.sys

В результате вы увидите все строки, содержащие строку "SET".

Однако операцию поиска текстовой строки в файле лучше выполнять с помощью любого текстового редактора, входящего в состав IBM OS/2 Warp, поэтому мы не будем уделять много внимания команде FIND.

MORE

Команда MORE может использоваться для поэкранного просмотра результата работы программы, выполняющей вывод на стандартное устройство вывода (аналогично тому, как это можно делать в операционной системе DOS).

Например:

dir | more
more <c:\config.sys

Первая команда выводит по одному экрану содержимое текущего каталога. Вторая используется для поэкранного просмотра содержимого файла config.sys, имеющего в IBM OS/2 значительную длину.

MOVE

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

Приведем два простых примера:

move c:\dat\myfile.dat a:\
move c:\book\*.doc d:\backup

PICVIEW

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

picview c:\os2\bitmap\aaaaa.met

Заметим, что после ввода этой команды запустится приложение Picture Viewer, которое вы можете найти в папке Productivity. Эта папка, в свою очередь, находится в папке OS/2 System.

PRINT

Так же как и в DOS, в операционной системе IBM OS/2 имеется команда PRINT, предназначенная для печати одного или нескольких файлов.

Эта команда используется точно также, как и в DOS. Для нее вы можете задать список файлов, а также параметры:

PRINT [Параметры1] [Список_Файлов] [Параметры2]

Приведем список параметров команды PRINT, которые указываются до списка файлов ("Параметры1"):

Параметр Описание
/D:Порт Порт вывода, который используется для печати. Если печать выполняется на локальном принтере, можно указывать порты PRN, LPT1, LPT2, LPT3. Если же доступны сетевые принтеры, данный список дополняется устройствами LPT4 - LPT9
/B Используется при печати двоичных (не текстовых) файлов. Если указан этот параметр, команда не воспринимает символ <Control+Z> как конец файла

В поле "Параметры2" вы можете указывать следующие параметры:

Параметр Описание
/D:Порт Порт вывода, который используется для печати
/C Отмена печати текущего файла
/T Отмена печати всех файлов

RECOVER

Команда RECOVER предназначена для восстановления файлов, расположенных на дисках с дефектными секторами. Она имеет один параметр - имя диска или путь к файлу. Вы не можете использовать эту команду для восстановления диска, на котором расположена операционная система IBM OS/2.

REN

Команда REN предназначена для переименования файлов и каталогов. Она была описана в разделе "Работа с каталогами".

RENAME

Эта команда является аналогом команды REN.

REPLACE

Команда REPLACE предназначена для замены файлов на файлы с такими же именами, но расположенными в другом каталоге. Она похожа на аналогичную команду операционной системы DOS.

RESTORE

С помощью команды RESTORE вы можете восстановить файлы из архивной копии, созданной командой BACKUP.

Синтаксис команды RESTORE приведен ниже:

RESTORE Архивный_Диск Восстанавливаемый_Диск Параметры

В качестве архивного вы можете указать имя диска или путь к каталогу, который был использован для записи архивных файлов, а в качестве параметра "Восстанавливаемый_Диск" - имя диска, содержимое которого надо восстановить. Например:

restore a: c:\*.*
restore f: c:\source\*.*
restore e: d:\DataBase\customers.db

Приведем список параметров команды RESTORE:

Параметр Описание
/P Запрос подтверждения для восстановления только читаемых файлов или файлов, измененных после выгрузки
/M Восстановление только тех файлов, которые были изменены после выгрузки
/B:мм-дд-гг Восстановление только тех файлов, которые были изменены до даты мм-дд-гг (мм - номер месяца, дд - число, гг - последние две цифры года)
/A:мм-дд-гг Восстановление только тех файлов, которые были изменены после даты мм-дд-гг
/E:чч-мм-сс Восстановление только таких файлов, которые были изменены до заданного времени.
/L:чч-мм-сс Восстановление только таких файлов, которые были изменены после заданного времени.
/N Восстановление файлов, которые не существуют на диске, подлежащем восстановлению
/F Работа команды останавливается, если выполняется попытка восстановления файлов с расширенными атрибутами, а устройство, на которое эти файлы восстанавливаются, не способно работать с расширенными атрибутами
/D Отображение списка восстанавливаемых файлов без выполнения процедуры восстановления
/S Восстановление содержимого подкаталогов

SORT

Команду SORT можно использовать для сортировки данных. Она используется аналогично команде SORT операционной системы DOS.

TREE

С помощью команды TREE можно просматривать дерево каталогов и список файлов. Однако эту операцию лучше выполнять с помощью Workplace Shell.

TYPE

С помощью команды TYPE вы можете просмотреть содержимое текстового файла, аналогично тому, как это делается в DOS:

type c:\config.sys | more
type ltr.txt

UNDELETE

Случайно удаленные файлы можно восстановить при помощи команды UNDELETE. Однако сразу после установки операционной системы IBM OS/2 Warp версии 3.0 такая возможность отсутствует. Чтобы ее включить, необходимо внести изменения в файл config.sys и перезапустить систему. Конкретно, необходимо установить значение переменной среды DELDIR.

Найдите в файле config.sys следующую строку (количество каталогов в списке может отличаться от приведенного нами):

REM SET DELDIR=C:\DELETE,512;D:\DELETE,512; 

При помощи любого текстового редактора нужно удалить символ комментария REM, сохранить файл config.sys и перезагрузить IBM OS/2. Более подробно процедура редактирования этого файла будет описана в следующей главе, посвященной настройке файла config.sys.

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

Синтаксис команды приведен ниже:

UNDELETE [Имя_Файла] [Параметры]

Приведем список возможных параметров:

Параметр Описание
/L Показать список файлов, которые можно восстановить. Процедура восстановления не выполняется
/S Восстанавливать или отображать имена удаленных файлов не только из заданного каталога, но и из его подкаталогов
/A Восстановить все файлы, поддающиеся восстановлению. Для каждого файла будет запрошено подтверждение
/F Если задать этот параметр, последующее восстановление файлов из указанного или текущего каталога станет невозможным

Почему система восстановления удаленных файлов отключена сразу после установки IBM OS/2 Warp? Дело в том, что эта возможность достается ценой потери производительности системы. Так что вы должны решить сами, что для вас важнее: скорость работы или возможность восстановления случайно удаленных файлов.

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

Вероятность восстановления повышается, если оно выполняется сразу после удаления файла, пока освободившееся в результате этой процедуры дисковое пространство не было распределено другому файлу.

UNPACK

Команда UNPACK предназначена для восстановления сжатых файлов из архивов, расположенных на дистрибутивных дискетах операционной системы IBM OS/2 или других программ. Имена таких файлов обычно оканчиваются символом "@", хотя это и не всегда так.

Синтаксис команды UNPACK и возможные параметры приведены ниже:

UNPACK [Путь_К_Файлу] Имя_Файла [Параметры]
Параметр Описание
/V После распаковки выполняется проверка записанного на диск файла. Эта операция замедляет работу команды
/F Если распакованные файлы содержат расширенные атрибутырасширенные атрибуты, проверяется возможность записи этих атрибутов на диск. Если устройство не может работать с расширенными атрибутами, работа команды останавливается
/N:Имя_Файла С помощью этого параметра вы можете извлечь только один файл из архива
/SHOW Просмотр содержимого архива. Этот параметр несовместим с остальными

VIEW

В составе IBM OS/2 Warp имеется набор гипертекстовых информационных систем, расположенных в файлах с расширением имени inf. Эти файлы находятся в каталоге os2/book. С помощью команды VIEW вы можете отобразить такую систему в отдельном окне.

Синтаксис команды VIEW:

VIEW /Раздел

или

VIEW inf-файл [Раздел]

Каждая справочная система содержит оглавление и разделы. Если раздел не указан, команда VIEW отобразит оглавление указанного inf-файла.

Например, следующая команда отобразит справочную информацию о команде COPY, взяв ее из файла cmdref.inf:

VIEW cmdref.inf copy

Результат выполнения этой команды показан на рис. 4.2

Рис. 4.2. Просмотр справочной информации об использовании команды COPY

XCOPY

Команда XCOPY известна вам по операционной системе DOS. Она может выполнять копирование файлов, расположенных не только в каталоге, но и во всех его подкаталогах.

Приведем синтаксис этой команды:

XCOPY Откуда Куда [Параметры]

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

Параметр Описание
/D:мм-дд-гг Копируются только такие файлы, которые были изменены после указанной даты
/S Копирование файлов, расположенных в подкаталогах исходного каталога
/E Копирование пустых каталогов. Этот параметр используется вместе с параметром /S
/P Вывод запроса подтверждения перед копированием каждого файла
/V Если указан этот параметр, после копирования выполняется проверка записанных данных. При этом скорость работы команды XCOPYXCOPY уменьшается
/A Копирование только тех файлов, у которых установлен атрибут архивирования. После копирования значение этого бита не изменяется
/M Аналогично предыдущему, но после копирования выполняется сброс атрибута архивирования. Параметр увеличивает привлекательность команды для выполнения архивирования данных, так как ускоряет этот процесс. Вы не можете использовать параметр /M совместно с параметром /A
/H Параметр разрешает копирование скрытых файлов. После копирования файлы остаются скрытыми
/T Параметр разрешает копирование системных файлов. После копирования файлы остаются системными
/R С помощью этого параметра вы можете копировать файлы, имеющие атрибут "Только читаемый файл". Копия такого файла также будет иметь этот атрибут
/O Параметр разрешает замещение в процессе копирования скрытых, системных или только читаемых файлов
/F Если указан параметр /F, перед копированием файлов с расширенными атрибутами проверяется возможность записи таких атрибутов на выходное устройство. Если выходное устройство не может работать с расширенными атрибутами, работа команды XCOPYXCOPY прерывается с сообщением об ошибке
[Назад] [Содеожание] [Дальше]