Соглашение, используемые при описании команд

5.5.2 Соглашения, используемые при описании команд

 

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

[а]                                — указывает на необязательность элемента а;

[а1| а2| …аN]             — свидетельствует о том, что должен быть только один из элементов ai, но может и не быть ни одного элемента;

[al \ a2\...aN]               — указывает на то, что обязательно должен присутствовать один из элементов ai (но не более одного);

<al а2 ... aN >            — группирует (но только при описании) элементы al, а2,… aN  [символы < и > играют роль скобок аналогично символам                   ( и ) в арифметических выражениях];

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

k                          — обозначает нажатие клавиши k.

С использованием принятых соглашений типовая структура команды DOS представляется следующим образом:

 

имя_команды [аргумент]... [переключатель]...

 

Первым элементом командной строки является имя команды, полный перечень которых уже приведен на рис. 5.13. За именем команды могут следовать аргументы (спецификации файлов, каталогов и т.п.), обычно отделяемые от него и друг от друга, по крайней мере, одним пробелом и используемые для указания объектов, над которыми требуется выполнить те или иные действия. Командную строку могут завершать переключатели (флаги), которые уточняют или модифицируют действие команды. Каждый переключатель начинается со слэша (/) и поэтому не обязательно должен отделяться от предыдущего элемента пробелами.

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

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

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

D                          — для имени логического привода (накопителя, дисковода);

Pattern                 для спецификации шаблона файла (полной или неполной);

file                        — для спецификации файла (полной или неполной), которая рассматривается как

          частный случай спецификации шаблона файла;

dir                        — для спецификации каталога (полной или неполной);

пате                    — для образца имени файла (не составного!);

ext                        — для образца расширения файла;

сотрпате           — для образца составного имени файла, т.е. для name[.ext] или пате.;

arglist                  — для списка аргументов (последовательность разделенных пробелами аргументов);

process                — для строки, обеспечивающей вызов команды или исполняемого файла на

                     выполнение (имя команды или спецификация исполняемого файла с аргумен­тами и переключателями);

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

k, l, т, п и т.п.— для числа.

Большинство упомянутых понятий введены нами в п. 5.2.2. Если в командной строке ис­пользуется несколько одинаковых понятий, то их имена при описании команд могут нумероваться (например, dl, d2), чтобы на них было удобно ссылаться в тексте.

Синтаксис командного языка DOS не безупречен. Так, в частности, d: в различных контекстах обозначает дисковод или текущий каталог на этом дисководе. Поэтому при описании команд возникают определенные трудности. Мы будем употреблять всегда для привода обозначение d, а для каталога — dir. В случае необходимости указания текущего каталога на дисководе d всегда будет предполагаться d:.. Поэтому запись dir\compname всегда оказывается корректной (в противном случае в качестве ее конкретизации допускалась бы строка d:\compname, которая означала бы ссылку на файл сотрпате в корневом, а не в текущем каталоге диска в приводе d). Но всегда нужно иметь в виду, что запись d: при указании каталога является сокращенной формой строки d:. .

В командном языке DOS наблюдается также некоторая непоследовательность в именовании переключателей (одни и те же переключатели в разных командах могут обозначаться по-разному, а разные переключатели — одинаково).

И наконец, синтаксис некоторых команд DOS (например, MODE) не укладывается в рамки общего формата.