8.8.9. Команды манипулирования файлами
Команда ERASE (DEL)
Назначение: удаление файлов.
Синтаксис:
ERASE [/{P·Q·Y·Z}] {pattern\dir} ...
или
Комментарии. Можно задавать несколько аргументов, указывающих подлежащие удалению
группы файлов, причем аргумент d: воспринимается в качестве сокращения для &: вполне нормально.
Переключатели интерпретируются следующим образом:
/Р ― запрашивать подтверждение от пользователя на удаление каждого
файла;
/Q ―
не отображать спецификации удаляемых.файлов (т.е. установить «невидимый» режим
работы команды, что аналогично перенаправлению стандартного вывода на
устройство NUL,);
/Y ― считать, что на все запросы пользователь ответил у
(даже на запрос при попытке удаления всех файлов в каталоге);
/Z ― удалить также и файлы с атрибутами Н, S и/или R.
Если ни один из переключателей не задан, то данная команда Выполняется
так же, как и DOS-команда ERASE.
Замечания:
― аргумент dir, как и в DOS, считается
сокращением для dir\*.m, а поэтому шаблон в dir недопустим;
― не следует использовать переключатель /Z совместно с
модификатором EXCEPT, так как действие последнего будет отменено.
Команда RENAME (REN)
Назначение: переименование файлов (каталогов) и пересылка файлов в пределах одного
диска/
Синтаксис:
RENAME [/{P·Q}] {pattern\dir} ... {pattem\dir}
или
REN (/{P·Q}) {pattern\dir} ... {pattern|dir}
Комментарии. Новшества данной команды состоят в следующем:
1) можно задавать более двух аргументов, последний из которых всегда
является целевым, а все остальные — исходными;
2) допускается переименование каталогов;
3) возможна пересылка файлов, но только в пределах одного диска, что
исключает их фактическое перемещение.
Допустимые переключатели:
/Р —
запрашивать подтверждение от пользователя перед обработкой каждого файла (каталога).
При задании /Р действие переключателя
/Q отвергается;
/Q —
не отображать спецификации обрабатываемых файлов (каталогов), т.е. установить
«невидимый» режим работы команды, что эквивалентно перенаправлению стандартного
вывода на устройство NUL.
Замечания:
— пересылка каталогов не
поддерживается;
— в качестве dir допустим шаблон,
что обеспечивает одновременное переименование группы каталогов;
— файлы могут пересекаться
как с одновременным переименованием, так и без такового;
― если маршрут в целевом
аргументе не указан, то осуществляется только переименование (как в DOS);
― когда целевой файл (каталог) уже существует, операция, запрошенная
по команде RENAME, отвергается, что обеспечивает достаточный
уровень безопасности;
— если требуется переслать
файлы на другой диск, то используйте команду MOVE.
Пример:
■ REN С:*.ТХТ C:*.LET C:\OLD\*.BAK — переименовать
ТХТ- и LET-файлы из текущего каталога диска в приводе С в файлы с теми же
именами, но с расширением ВАК, и переслать их в каталог C:\OLD.
Команда ATTRIB
Назначение: изменение, а также отображение атрибутов файлов и каталогов.
Синтаксис:
ATTRIB [/{D·S} ] ◄[{+ |-}{A·H·R·S}]
... {pattern \ dir} ► ...
Комментарии. Отличия данной команды от одноименной DOS-команды состоят в
следующем:
1) NDOS-команда ATTRIB является внутренней, а не внешней;
2) обслуживаются не только атрибуты R и А, но также Нив;
3) обеспечивается работа с атрибутами не только файлов, но и каталогов;
4)в командной. строке допускается задание нескольких аргументов pattern и/или dir вместо
одного;
5)идентификаторы атрибутов можно группировать в один аргумент, хотя это
и не обязательно.
Заданные в командной строке значения атрибутов действуют на все последующие
спецификации pattern и/или dir, пока не будут отменены другими указаниями.
Переключатели интерпретируются следующим образом:
/D —
установить атрибуты (R, A, S и/или Н) у каталога, а не файлов. В отличие от DOS 5.0 при отсутствии /D аргумент dir не будет интерпритироваться как dir\*.*, а будет произведен поиск файла dir,
/S — обработать не только выделенный, но и все подчиненные
ему каталоги.
Замечания:
—в качестве dir допустим шаблон;
― доступ к каталогам с атрибутом R не ограничивается,
а каталоги с атрибутами Н и/ или S становятся
невидимыми;
― переключатель /D в командах NDOS может выполнять следующие функции:
обеспечивать совместимость с КП DOS (чтобы NDOS-команда без /D выполнялась как одноименная DOS-команда, но
дополнительно могла обрабатывать каталоги); жестко разграничивать режимы обработки
файлов и каталогов (как в случае команды ATTRIB); исключать
неоднозначность интерпретации аргументов в тех контекстах, где dir считается
сокращением dir\*.*.
Команда COPY
Назначение: копирование и сцепление (конкатенация) файлов.
Синтаксис:
COPY [/{M·P·Q·R·U·V}] ◄ {pattern \ dir} [/А|/В} [ + ] ► ...
Комментарии. NDOS-команда COPY имеет следующие особенности:
1) в режиме копирования допускается указание нескольких исходных
аргументов, но тогда целевой аргумент должен быть существующим каталогом, а не
шаблоном pattern;
2) поддерживается большой набор переключателей, действующих на всю
командную строку и уточняющих режим копирования файлов.
Если синтаксически задан режим копирования с несколькими исходными
аргументами (символы + между аргументами отсутствуют), а целевым аргументом
является pattern, то команда будет
выполняться в режиме конкатенации файлов.
Переключатели интерпретируются следующим образом:
/М — копировать
только файлы с атрибутом А (у файлов-оригиналов атрибут А при этом сбрасываться
не будет);
/Р — запрашивать подтверждение
от пользователя на копирование каждого файла, что обеспечивает интерактивный
выбор файлов для копирования в процессе самого копирования;
/Q —
не отображать спецификации копируемых файлов (т.е. установить «невидимый» режим
работы, эквивалентный перенаправлению стандартного вывода на устройство NUL);
/К — запрашивать
подтверждение от пользователя перед заменой каждого файла, что повышает
безопасность команды;
/U —
копировать только те файлы, которые созданы позже имеющихся в целевом каталоге
файлов или отсутствуют в нем, что позволяет обновить содержимое целевого
каталога.
Остальные переключатели действуют аналогично DOS-команде COPY.
Команда MOVE
Назначение: пересылка файлов.
Синтаксис:
MOVE [/{P·Q·R}] {pattern\dir} ...
Комментарии. Новая команда MOVE функционально аналогична команде COPY в режиме
копирования, но имеется одна важная особенность: после копирования
файлы-оригиналы удаляются.
Технически сначала производится попытка выполнить те же действия, что и
в команде RENAME. Если эта попытка к успеху не приводит (т.е.
требуется пересылка на другой диск или целевые файлы уже существуют), то
производится копирование с последующим удалением файлов-оригиналов. Когда
файлы-оригиналы удалены быть не могут (например, они имеют атрибут R или находятся на
защищенном от записи диске), выдается сообщение об ошибке, но дубликаты все же
создаются.
Если в командной строке специфицировано более одного исходного
аргумента, а в качестве целевого задан pattern, то команда не выполняется, а просто генерируется сообщение об ошибке.
Замечание: будьте внимательны при использовании модификатора SELECT Совместно с
командой MOVE. Если в модификаторе применены круглые
скобки для выбора групп файлов, а в команде MOVE целевой аргумент
задан в виде pattern, то выполнение
команды приведет к удалению всех исходных групп файлов, за исключением
последней, и к пересылке только последней группы файлов. Причиной тому является
многократное выполнение команды MOVE с различными
исходными, но одним и тем же целевым аргументом. Когда в модификаторе вместо
круглых использованы квадратные скобки (задающие однократное выполнение
команды), команда MOVE завершится аварийно, что уже нами отмечено.
Команда
TYPE
Назначение: отображение содержимого файлов.
Синтаксис:
TYPE [/{L·P}] pattern ...
Комментарии. В отличие от DOS-команды TYPE допускается
указание нескольких файлов, в том числе шаблонами, и задание следующих
переключателей:
/L —
перед каждой строкой текста отобразить ее номер, что удобно, в частности, при
выводе программы;
/Р — обеспечить постраничную выдачу.
Замечание: Вам может больше подойти команда LIST.
Команда LIST
Назначение: отображение содержимого файлов в постраничном режиме с возможностью
прокрутки текста как вперед, так и назад. Синтаксис:
LIST [/ {Н · S · W} ] pattern ...
Комментарии. LIST обеспечивает полноэкранное интерактивное
отображение содержимого заданных текстовых файлов и является по сути текстовым
визуализатором, встроенным в NDOS. Переключатели
интерпретируются таким образом:
/Н — подавлять
старший бит перед отображением каждого байта. Это позволяет выдавать содержимое
файлов, подготовленных теми текстовыми редакторами, которые используют символы
с большими кодами в качестве форматирующих;
/S — читать со
стандартного ввода, а не из файлов, что обеспечивает возможности перенаправления
ввода-вывода;
/W —
разрывать (заворачивать) длинные строки, что полезно при отображении
содержимого не только текстовых файлов с длинными строками, но и нетекстовых
файлов.
Для прокрутки текста на экране дисплея используйте клавиши управления
курсором. Ряд клавиш, а также их комбинаций имеют следующее специальное
значение (назначение других доступных клавиш мы не приводим):
Ноте — отобразить первую страницу
файла;
End — отобразить
последнюю страницу файла;
Esc — перейти к визуализации следующего файла;
Ctrl-C — завершить визуализацию файлов;
↑ —
осуществить прокрутку на одну строку вверх;
↓ — осуществить
прокрутку на одну строку вниз;
← — осуществить прокрутку на 8
колонок влево;
→ —
осуществить прокрутку на 8 колонок вправо;
Ctrl-← —
осуществить прокрутку на 40 колонок влево;
Ctrl-→
— осуществить прокрутку на 40 колонок вправо;
F1 —
вызвать интерактивный справочник;
F —
осуществить поиск заданной символьной строки (верхний и нижний регистры различаться
не будут);
N — найти следующую символьную строку (используется после F);
F6 — осуществить поиск ранее
заданной (при визуализации любого из предыдущих файлов) символьной строки. Это
возможно потому, что последняя установка для поиска сохраняется даже при
переходе к визуализации другого файла. Используется после F;
Р — отпечатать файл на
устройстве PRN.