Команды манипулирования файлами

8.8.9. Команды манипулирования файлами

Команда ERASE (DEL)

Назначение: удаление файлов.

Синтаксис:

ERASE [/{P·Q·Y·Z}] {pattern\dir} ...

или

DEL [/{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.