Операционные системы - правила работы

         

C.2.1. Введение


После загрузки операционная система готова к работе. Под ее управлением можно запускать различные программы системного и прикладного назначения. Большинство пользователей работают с операционной системой не напрямую, а с помощью файловых (типа Norton Commander, Volcov Commander, Far, Dos Navigator и т.п.) или операционных оболочек (типа Windows 3.11, Dos Shell и других.) Но, во-первых, некоторые программы по разным причинам не выполняются при загруженных оболочках. Во-вторых, вследствие большого количества операционных оболочек трудно ориентироваться в них. В-третьих не всегда оболочку можно запустить (например, при временном выходе в операционную систему из выполняемой ей-же программы.) При временном выходе в DOS поверх программы загружается файл Command.com, и оперативной памяти становится недостаточно для работы операционной оболочки. В-четвертых, при сбоях в операционной системе Microsoft Windows95/98 иногда доступна загрузка только в командной строке.

Указанное выше позволяет сделать вывод о необходимости умения пользоваться командной строкой операционной системы. В этой части дается как бы "мультилингва" - описания служебных программ для работы с файлами в операционных системах Microsoft (MS-DOS, MS Windows 95/98/NT), в операционной системе IBM OS/2 и LINUX.

Для более подробной информации смотри документацию к операционным системам.



C.2.2.1.1. Задание переменных окружения. Команда SET


В основном все переменные окружения оболочки MS-DOS определяются с помощью команды SET в файле Autoexec.bat. Исключением являются следующие переменные:

- CONFIG - определяется в файле Config.sys,

- PROMPT - определяется отдельной командой DOS - оболочки,

- PATH - задается отдельно в файле Autoexec.bat.

Команда SET без параметров выдает текущее состояние переменных окружения.

Команда

SET <имя>=<значение>

присваивает переменной с идентификатором <имя> строку <значение>. В строке <значение> делается различие между прописными и строчными буквами, а в имени переменной такого различия нет.

Команда

SET <имя>=

отменяет все значения переменной с идентификатором <имя> и удаляет ее из системного окружения.

Пример:

SET TMP=C:\TMP

присваивает значение переменной TMP, которые старые прикладные программы фирмы Microsoft использовали для определения каталога со временными файлами.

set tmp=C:\TMP

та же команда, набранная строчными буквами.

SET FILE=scandisk.log

переменной FILE присваивается имя файла scandisk.log. Теперь эту переменную можно использовать вместо имени этого файла, например:

type %FILE% | more - выдает поэкранную распечатку файла scandisk.log

Замечание 1. Автор не советует использовать в команде set никаких лишних пробелов, Так, из за указания пробелов перед и после знака "=" в операционной системе MS-DOS v. 6.0 в команде set TMP = C:\TMP переменная TMP у автора не добавилась в окружение DOS. Указание же пробелов после знака "=" при определении переменной PATH в любой операционной системе всегда приводит к очистке этой переменной.

Замечание 2. Задание и сброс переменных окружения возможно только в файле Autoexec.bat и в "чистой" командной строке MS-DOS. Задание же переменных окружения в файловых оболочках не приведет к изменению значений переменных окружения. В операционных же оболочках (и в графических оболочках MS WINDOWS 95/98/NT) изменение переменных окружения произойдет только на текущий сеанс эмуляции MS-DOS).



C.2.2.1.2. Переменная PATH


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

1. Необходим запуск программы не из ее "родного" каталога, а из каталога, содержащего файлы пользователя, обрабатываемые этой программой. Это наиболее часто используемый случай.

2. Программа использует при своей работе другие программы, расположенные не в ее "родном" каталоге. Эта ситуация часто происходит при работе программ Windows.

Для удобства работы переменная PATH записывается без префикса SET. Ее синтаксис:

PATH=<путь>[{;<путь>}]

Путь можно писать как прописными, так и строчными буквами, без разницы: операционная система все символы приведет к верхнему регистру. Это добавление очень важное! Дело в том, что добавление новых путей к переменной PATH должно производится с указанием путей в верхнем регистре.

Задание PATH или PATH= без путей очищает переменную PATH. Задание же

PATH=<новый_список_путей> приводит к замене существующего значения переменной новым значением, а не добавление нового значения к списку имеющихся.

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

SET PATH=%PATH%;C:\TMP

добавляет новый путь в переменную PATH в ее конец.

SET PATH=C:\TMP;%PATH%

добавляет новый путь в переменную PATH в ее начало.

Неправильное использование переменной PATH:

SET PATH=%path%;c:\tmp

SET PATH=c:\tmp;%PATH%

Замечание 1. При запуски файла на исполнение сначала проверяется наличие файла с этим именем в рабочем каталоге, а уже потом - в путях переменной PATH.

Замечание 2. Порядок поиска файла по путям переменной PATH происходит слева направо, в порядке их записи. Поэтому, если существуют несколько исполняемых файлов с одинаковыми именами, но расположенных в разных каталогах, и эти каталоги прописаны в переменной PATH, то при вызове программы на исполнение из произвольного "неродного" каталога запустится программа из каталога, расположенного первым в переменной PATH.

Замечание 3. Переменная PATH задает пути поиска только исполняемых файлов. Для задания пути поиска неисполняемых файлов (например, файлов данных) используется команда Append.



C.2.2.1.3. Другие переменные окружения Command.com


Наиболее часто используются следующие переменные окружения DOS:

TEXT - определяет каталог со служебными файлами Лексикона. Если она не указана, используется каталог с программой lexicon.

CHIFILES - определяет каталог со служебными файлами ChiWriter. Если она не указана, используется каталог с программой cw.

87 - указывает программам, написанных на TurboC и Turbo Pascal, использовать (set 87=Y) или не использовать (set 87=N) команды сопроцессоров i80x87. Если переменная не используется, то инструкции используются только при наличии в системе сопроцессора.

PKTMP - указывает имя каталога, в котором архиватор PKZIP создает свои временные файлы.

INCLUDE - указывает имена каталогов (разделенных ";"), в которых происходит поиск файлов заголовка компилятором Microsoft.

LIB - указывает имена каталогов (разделенных ";"), в которых происходит поиск библиотек и объектных файлов при их сборке в исполняемый файл командой link ("редактор связей").

NC - указывает имена каталогов со служебными файлами Norton Commander. По-умолчанию - каталог с файлом nc,com (nc.exe в более поздних версий).

VC - указывает имена каталогов со служебными файлами Volkov Commander. По умолчанию - каталог с файлом vc.com.

NU - указывает имена каталогов со служебными файлами Norton Utilites. По умолчанию - каталог с файлом norton.exe.

LEX - используется программой для проверки орфографии Micro Spell. Она должна быть обязательно установлена при пользовании этой программой. В противном случае программа выдает ошибку.

ME_PATH - переменная используется для указания каталога с файлами редактора MultiEdit. Ее использование не обязательно - система сама правильно распознает местонахождение этих файлов.

BLASTER - указывает параметры звуковой платы. Пример:

set BLASTER=a330 i9 d1 t2

базовый порт ввода/вывода - 330, ей присвоено аппаратное прерывание IRQ9, она использует канал DMA - 1, тип карты - 2 (совместимая с Sound Blaster Pro). Обычно эта переменная устанавливается в файл Autoexec.bat командой инсталляции драйверов звуковой платы.

TEMP и TMP - переменные, определяющие каталог, в котором программы фирмы Microsoft создают свои временные файлы. Переменная TMP используется старыми приложениями, TEMP - новыми.



C.2.2.1. Переменные окружения Command.com


Итак, перечислим основные переменные окружения MS-DOS:

1. Переменная местонахождения командного процессора COMSPEC.

2. Переменная приглашения командной строки PROMPT.

3. Переменная приглашения командной строки Windows 3.1x (только в MS-DOS v. 6.0 - 6.22) WINPMT.

4. Переменная опций вывода оглавления каталога, действующих по-умолчанию DIRCMD.

5. Переменная путей текущей конфигурации DOS (только для MS-DOS v. 6.0 и старше) CONFIG.

6. Переменная путей для поиска исполняемых файлов PATH.

7. Переменные для каталогов со временными файлами TEMP и TMP.

8. Специальные переменные окружения, требуемые прикладными пакетами.

Примечание: системные переменные графической оболочки Windows здесь не рассматриваются.

В таблице приведены значения по умолчанию для этих переменных окружения.

Таблица C.I. Значения основных переменных MS-DOS по-умолчанию.

Рассмотрим эти переменные по-подробнее:

Системные переменные DOS.

1. Переменная CONFIG определяет, какая из указанных в файлах Config.sys и Autoexec.bat конфигураций в настройке операционной системы активна. Эта опция не несет особого смысла и используется в файле Autoexec.bat в строке goto %config%. В этой строке определяется переход к той или иной последовательности загрузки резидентных программ для заданной конфигурации файла Config.sys. Для пользователя же эта переменная носит чисто информационный характер.

2. Переменная COMSPEC . Указывает путь местонахождения командного файла (или оболочки DOS). Этот путь соответствует пути для командного файла, указанного директивой SHELL в файле Config.sys. Автор считает, что существует только одна причина явно менять эту переменную - в случае перемещения командного файла.

Пример; с дискеты загружается операционная система фирмы Microsoft. С целью обеспечения правильной работы системы при смене дискеты в памяти компьютера создается виртуальный диск размером 2 Мбайта следующей командой файла Config.sys:

DEVICE=RAMDRIVE,SYS 2048 512 128 /E

В файл же Auoexec.bat вставляются следующие строчки:

copy a:\command.com D:\

set comspec=D:\command.com

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

3. Переменная TZ - устанавливает часовой пояс для рабочей станции, работающей в глобальной сети. Ее синтаксис:

set TZ=zzzhhdst , где

zzz - зона местного времени, hh - отставание от Гринвича, dst - зона "летнего" времени. Так, для Москвы:

SET TZ=EST3EDT

Вообще EST определяет отставание от Гринвича (восточная долгота), PST - опережениеГринвича (западная долгота), а EDT/PDT - учет перехода на летнее время.

Остальные переменные рассматриваются в соответствующих разделах, посвященных различным аспектам работы командной оболочки DOS.



C.2.2. Shell и переменные окружения


После загрузки ядра операционной системы (для DOS это файлы Io.sys и MSDOS.sys) загружается так называемая программная оболочка, (или командный файл Command.com для систем MSDOS). В этой программной оболочке (или Shell) находятся интерпретаторы команд операционной системы и переменные окружения. Эти переменные окружения определяют приглашение операционной системы, пути, по котором ищутся вспомогательные файлы и программы, настройки аппаратных средств и опции вывода оглавления каталога.

Для операционной системы MS-DOS существует две оболочки. Первая, выбираемая по умолчанию и входящая в состав дистрибутива этой системы является программа Command.com. Другой оболочкой является входящий в состав Norton Utilites for DOS v. 6.0 - 8.0 оболочка NDOS.com.

Для UNIX - подобных операционных систем используется несколько различных оболочек. В частности, для LINUX наиболее часто используемые оболочки - это Bourne Again Shell (BASH) и TCSH - shell.

Все эти оболочки имеют разные переменные окружения. Описанием этих переменных автор и начнет свой рассказ о командной строке операционных систем.

Также следует отметить, что в [Р. Петерсен. LINUX: руководство по операционной системе //Изд. группа BHV, Киев, 1997. - 688 с.] на странице 446 дается следующая классификация переменных окружения, которой автор и будет придерживаться.

1. Системные переменные - специальные переменные, которые нельзя переопределять.

2. Переопределяемые переменные - специальные переменные, которые можно переопределять.

3. Пользовательские переменные - переменные, присутствие которых в окружении не обязательно.



C.2.3.1. Определение переменной


Синтаксис определения переменной в BASH следующий:

<имя_переменной>=<константа>

В качестве константы используется так называемая символьная константа - набор ASCII - символов, заключенных в двойные кавычки (как в языке Си, на котором написана данная операционная система). Регистр букв, набранных как в имени переменной, так и в константе, существен. Так, в отличие от DOS, переменные me, ME и Me различны! Пример определения переменной:

myfile="List"

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

ls > $myfile

echo "Printing $myfile..."

lpr $myfile

В этом примере вначале создается оглавление каталога (команда ls, см. ???), которое перенаправляется в файл List. После этого на экран выводится сообщение:

Printing List...

и на принтервыдается содержание файла List (т.е оглавления текущего каталога, см. первую команду). Заметим, что перед использованием переменной перед ней ставится знак доллара, указывающий, что вместо символов (в данном случае myfile) используется строковая переменная.



C.2.3.2. Переназначение переменной и отмена его значения. Вывод текущих значений переменных.


Для назначения переменной нового значения используется та же конструкция:

<имя_переменной>=<новое_значение>

где новое значение - константа.

Для отмены назначения переменной и удаления этой переменной из окружения используется команда unset. Например,

unset myfile

удаляет из окружения переменную myfile.

Вывод текущих значений переменных выдается с помощью команды set, а только специальных переменных окружения - командой env.



C.2.3.3. Экспорт переменных


Экспорт переменной в другую оболочку осуществляется в BASH с помощью команды export. Ее синтаксис:

export <имя_переменной>[{<имя_переменной>}]

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



C.2.3.4. Системные переменные BASH


Переменная HOME.

Переменная HOME определяет путевое имя Вашего начального каталога. Этот каталог автоматически создается при создании администратором Ваших учетных данных, а этой переменной назначается правильное значение этого каталога. Эта переменная используется в том случае, когда нужно задать путевое имя начального каталога. Например, пусть переменной HOME присвоено значение /home/yuri. Тогда следующая команда:

cd $HOME/letters

приведет к переходу в каталог /homr/yuri/letters.

Переменная LOGNAME .

Данная переменная содержит Ваше регистрационное имя. Так, для пользователя yuri значение этой переменной будет yuri. Ее следует использовать в тех случаях, когда надо указать регистрационное имя.

Переменная TZ

Эта переменная определяет часовой пояс, используемый в системе.

Для Москвы:

TZ=EST3EDT

Значение по-умолчанию -

TZ=PST8PDT

Задание зоны аналогично для переменной TZ в DOS.



C.2.3.5. Переопределяемые переменные


Переменная SHELL

В операционной системе LINUX при регистрации можно использовать три оболочки (см. введение к разделу "Переменные BASH". Переменная SHELL определяет оболочку, загружаемую по умолчанию. В качестве строки передается каталог с файлами оболочки. Пример:

SHELL=/bin/bash

задает в качестве оболочки, загружаемой по-умолчанию, BASH.

SHELL=/bin/pdksh

задает в качестве оболочки, загружаемой по-умолчанию, PDKSH-shell.

SHELL=/bin/tcsh

задает в качестве оболочки, загружаемой по-умолчанию, TCSH.

Заметим, что смена оболочки произойдет не сразу, а только после перезагрузки системы.

Переменная PATH

Данная переменная содержит имена каталогов, в котором содержатся выполняемые программы. При записи программы на исполнение в каталогах, заданных этой переменной, ищутся файлы с данным именем, а после нахождения этого имени оно "достраивается" до полного имени и только после этого запускается на выполнение. В отличие от DOS, если текущий каталог не указан в переменной PATH, из него также нельзя запускать файлы.

В переменной PATH все каталоги записываются без пробелов, а разделяются знаком ":" (двоеточие). Знак двоеточие в конце означает текущий каталог. В переменную PATH обязательно необходимо включать имена каталогов /usr/bin и /usr/sbin. По-умолчанию переменная PATH выглядит так:

PATH=/usr/bin:/usr/sbin:

то есть в ней указаны вышеперечисленные каталоги и рабочий каталог.

Добавление в переменную PATH новых каталогов происходит, как показано в следующем примере:

PATH=$PATH:$HOME:

В данном примере в конец списка каталогов PATH добавляется домашний каталог.

Переменные PS1 и PS2

Данные переменные определяют вид приглашения операционной системы: основной и дополнительный.

Переменные MAIL и MAILCHECK

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

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

Переменная MAILCHECK задает промежуток времени, по истечении которого система будет предупреждать Вас о получении почты. По-умолчанию этот промежуток устанавливается в 600 секунд (10 минут). Время указывается в секундах.

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

MAIL=/var/mail/yuri

MAILCHECK=1200

В данном примере основной почтовый ящик переназначается в каталог /var/mail/yuri, уведомление о поступившей почте будет посылаться каждые 1200 секунд (20 минут).



C.2.3.6. Переменные режима


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

set -o <режим>

а выключение - командой

set +o <режим>

Перечислим основные режимы BASH:

Режим ignoreeof

Этот режим блокирования возможности выхода из оболочки с помощью комбинации клавиш Ctrl+d. Выход из оболочки с установленной опцией возможен только по команде exit. Этот режим используется для перестраховки при использовании комбинации клавиш Ctrl+d, которая часто используется и в других программах.

Режим noclobber

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

ls > myfile

ls -l > myfile

ls -l >> myfile

О переадресации ввода и вывода смотри C.3.3.

Режим noglob

Режим используется для блокирования специальных символов регулярных выражений, используемых в шаблонах: *, ?, ~, [, ]. В данном режиме эти символы можно использовать в именах файлов. Например, допустимым будет имя файла Why? . Однако использование регулярных выражений будет запрещено!



C.2.3.7. Пользовательские переменные.


Переменная MAILPATH

Эта переменная используется для указания путей для поиска дополнительных почтовых ящиков. Как уже указывалось в разделе C.2.3.5., в системе для каждого пользователя должен быть создан хотя бы один почтовый ящик. Однако не возбраняется каждому пользователю иметь несколько дополнительных почтовых ящиков, местонахождение которых и определяется этой переменной. Однако данная переменная не создается автоматически при создании учетных данных пользователя, и должна определяться отдельно.

В приведенном ниже примере задается путь для дополнительного почтового ящика, находящегося в директории /home/mail/yuri, если значение переменной LOGNAME равно yuri:

MAILPATH=/home/mail/$LOGNAME

Переменная CDPATH

Аналога этой переменной нет в не UNIX-подобных операционных системах. С помощью этой переменной определяются каталоги, в которых команда cd ищет подкаталоги. Пусть, например, фрагмент дерева каталогов в LINUX системе такой:

задана переменная CDPATH:

CDPATH=/home/yuri/mail

и текущим является каталог /home/yuri/letters/old. Тогда следующая команда:

cd myletters

вызовет не ошибку, как при отсутствии переменной CDPATH, а вызовет переход в каталог /home/yuri/mail/myletters. Команда же

cd old

вызовет ошибку, так как путь к директории /home/yuri/letters не прописан в пути CDPATH.

Пользоваться этой переменной следует с осторожностью! Дело в том, что если указать в переменной CDPATH каталоги, имеющие подкаталоги с одинаковыми именами, то действие команды cd не предсказуемо!

Переменная TERM

Переменная определяет тип подключенного терминала. Эта информация нужна таким программам, как стандартные редакторы для определения режима ввода/вывода. Дело в том, что на разных терминалах (или консоли, как этот термин расшифровывается в MS-DOS) существуют различные раскладки клавиатуры, различные кодировки и виды символов. Как правило, если Вы регистрируетесь в системе с терминала, она сама правильно определяет его тип. Однако если Вам надо явно указать его вид, необходимо явно указать его значение. Аналогом этой переменной в DOS могут служить команды mode, chcp, keyb, программы - русификаторы экрана и клавиатуры и другие программы, управляющие переназначением клавиш и управляющие выводом символов на экран.

Переменная EXINIT

Данная переменная содержит команды, позволяющие конфигурировать редакторы Ex и Vi. Когда Вы вызываете эти редакторы, команды, указанные в переменной EXINIT, выполняются. Команды пишутся в одну строку, в кавычках. Опции с одинаковым префиксом записываются подряд.



C.2.3. Переменные BASH


В отличие от DOS и его оболочек количество переменных окружения в LINUX значительно больше. Это объясняется тем, что UNIX - подобные системы были специально разработаны для работы со строкой приглашения операционной системы. С помощью этого приглашения и встроенных в UNIX стандартных команд в ней можно писать настоящие программы, содержащими даже условные выражения и циклы!

Различные разработчики UNIX - подобных операционных систем создали не только разные ядра и прикладные программы для этих операционных систем, но и разные оболочки. LINUX впитала лучшее из этих разработок, и в настоящее время поддерживает следующие оболочки: Bourne Again Shell (BASH), Public Domain Korn Shell (PDKSH) и TC - Shell (TCSH). Они в свою очередь являются потомками Korn - Shell и C = Shell. Не смотря на различия в реализации этих командных оболочек в UNIX - подобных операционных системах, в LINUX между ними больше сходства, чем различий. Это понятно - они реализованы в рамках одной операционной системы для Intel - совместимых компьютеров. К рассмотрению переменных в этих оболочках мы и приступим.

По умолчанию в LINUX применяется BASH. Но по желанию пользователь может загрузить другую оболочку. Все они вызываются "одна поверх другой", расходуя память компьютера. В отличие от Command.com и NDOS.com, каждая новая оболочка загружается с параметрами по-умолчанию, а текущие установки сбрасываются. Так же, как и в DOS, при возврате в предыдущую оболочку все переопределенные переменные очищаются. Для "наследования" переменных (то есть сохранения настроек части переменных предыдущих оболочек в последующих) в LINUX используются команды export в BASH и setenv в TCSH, о которых будет сказано ниже.



C.2.4.1. Приглашение операционной системы MS-DOS


По-умолчанию системное приглашение операционной системы MS-DOS выглядит как

A>

где A - номер текущего диска. Его можно сменить с помощью команды PROMPT . Эта команда является внутренней, то есть встроенной в командный процессор Command.com. Формат команды:

prompt текст

Таблица возможных параметров в тексте команды prompt, а также Esc - последовательности, которые можно указать в этой команде, приведены в таблице 2.2.



C.2.4. Приглашение операционной системы.


В случае, когда операционная система готова к диалогу с пользователем, она выдает на экран приглашение. Основные приглашения имеют вид:

Таблица C.II. Приглашения операционной системы.

DOS LINUX
<диск>:\<путь> $
<диск> >

Например;

1. A:\>

C:\WINDOWS\>

2. C>

Внешний вид приглашения можно изменить.

Для MS-DOS в качестве элемента приглашения могут быть:

Знак "=". Знак "|". Знак "$". Знак ">". Знак "<". Текущее время. Текущая дата. Текущий диск и каталог. Текущий диск. Версия MS-DOS. Переход на следующую строку.

Также в системное приглашение MS-DOS можно вставлять другие ASCII - последовательности. В случае установки драйвера ANSI.SYS в файле Config.sys в приглашении также можно использовать и Esc - последовательности.

В системе LINUX есть основное и дополнительное приглашение. Дополнительное приглашение появляется при записи длинной команды, не помещающейся в командной строке. Каждая новая строка начинается с нового дополнительного приглашения.

В приглашении LINUX могут быть любые символы и следующие последовательности:

Текущая дата. Действующая оболочка и ее версия. Время суток. Имя пользователя. Текущий (рабочий) каталог.

Для установки желаемого приглашения необходимо поменять некоторые переменные окружения. Как это сделать - смотри ниже.



C.3.1. Запуск из командной строки.


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



C.3.3. Редактирование командной


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

Действия DOS UNIX
Стирание предыдущего символа Backspase Backspase, Del,Ctrl + n
Удаление текущего символа (на который указывает курсор) Del Ctrl + d
Вызов в командную строку предыдущей команды F3 <стрелка вверх> (Doskey) <стрелка вверх> Ctrl + E (Norton Commander) ! <стрелка вверх>
Включение\выключение режима вставки символов Ins (Doskey)
Очистка всей командной строки Esc Cntrl + u

Это были все команды редактирования, доступные MS-DOS для командной строки, без загрузки редактора командной строки и операционных оболочек. Если нужно работать более интенсивно с командной строкой, необходимо запустить этот редактор или оболочку. В DOS для редактирования командной строки используется программа DOSKEY . Для UNIX такие средства не нужны, операционная система поддерживает редактирование командной строки самостоятельно.

Вызов команды DOSKEY.COM происходит следующим способом:

doskey (опции)

Наиболее часто используемые опции:

/INSERT - запуск в режим вставки. При вводе нового текста в командной строке старый текст будет раздвигаться. Выход\вход в этот режим осуществляется клавишей Ins.

/OVERSTRIKE (по умолчанию) - новый текст записывается поверх старого. Вход\выход из этого режима - клавиша Ins.



C.3.4. Назначение клавиш редактирования командной строки.


Продолжим таблицу, но теперь будем указывать, какой именно драйвер командной строки загружен.



C.3.5. Особенности командной строки в UNIX.


В системе UNIX одновременно на выполнение можно послать несколько программ. Для этого их надо перечислить (вместе с опциями и параметрами) в командной строке, отделяя одну от другой точкой с запятой ";". В DOS это можно сделать только при создании псевдонима, о котором речь пойдет ниже.



C.3.6. Определение псевдонимов .


Для облегчения работы с командной строкой (например, чтобы все время не набирать команду со множеством опций) бывает проще создать новую команду, представляющую собой комбинацию из уже имеющихся. Эти новые комбинации называются псевдонимами в UNIX и макросами в MS-DOS. Для их создания используют конструкции:

в DOS - doskey <имя новой команды>=<макрокоманда>,

где <макрокоманда> - последовательность программ с опциями, параметрами и специальными символами (смотри в документации по DOS описание программы doskey).

В UNIX - alias <имя новой команды>=<имя старой команды с опциями и параметрами>

При определении псевдонима можно использовать перенаправление ввода и вывода информации, осуществить конвейер и использовать почти все возможности командной строки.

В DOS в макросах можно использовать формальные параметры и другие возможности, ранее присутствовавшие только в командных файлах (с расширением .bat).

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

Для отмены псевдонима нужно набрать:

в DOS - doskey <имя макроса>=

в UNIX - unalias <имя псевдонима>.



C.3.7. Резюме


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



C.4.1. Назначение шаблонов


Иногда при работе с файлами необходимо или возможно указывать только часть их имени или расширения. Это делается, например, для того, чтобы в параметрах программы не называть полностью имена всех файлов, над которыми производится операция, а выделить их в группу по какому-нибудь признаку (заметим, что некоторые программы работают не с единичными файлами, а с группой). Также бывает необходимо найти файл или файлы, у которых неизвестны полное имя и/или расширения. Для этих целей используют так называемые шаблоны.



C.4.2. Определение.


Шаблоны представляют собой обычное имя файла (и его расширение) , в котором вместо некоторых букв появляются знаки ?, *, и (в UNIX) []. Знак вопроса указывает на то, что на его месте непременно должен стоять какой-либо допустимый символ имени файла (буква, цифра и т.д.) и причем только дин . Знак * указывает на то, что на его месте может стоять любое количество символов , допустимых в имени файла, а также вообще ничего не стоять . В квадратные скобки заключаются те знаки, один из которых обязательно должен присутствовать в имени файла на этом месте.



C.4.3. Пример шаблонов.


Шаблон Соответствие
boo?.tmp book.tmp, boot.tmp, boo1.tmp и др.
boo[tk].tmp boot.tmp и book.tmp
b*t.t?p boot.tep, bat.tmp, bt.tnp и др.
[a-c]3.bat a3.bat, b3.bat и c3.bat

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

Пример:

*t.tmp bt.tmp, boo.tmp

Это связано с недоработкой программного обеспечения.

Также в некоторых реализациях MS-DOS игнорируются все буквы и цифры после знака *. Учитывайте это при составлении шаблонов!

Шаблоны можно указывать и в имени, и в расширении. Он также может состоять из одних только специальных символов. Например:

*.* - шаблон для всех файлов с любым расширением.

???. - все файлы с именем из трех символов без расширения.

*.com - все файлы с расширением com.

*.? -- файлы с расширением из одной буквы.

name.* -- все файлы с именем name и любым расширением.



C.4.4. Резюме.


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

Символы Значение
? На месте этого знака должен находится один и только один из допустимых символов имени/расширения файла.
* На месте этого знака должны находится любое количество допустимых символов имени/расширения или не находится ни одного. В некоторых реализациях все следующие за этим знаком символы игнорируются при поиске.
[] В скобках указывается символы, из которых один обязательно должен присутствовать в имени/расширении. В случае, если символы в скобках записаны через знак тире '-', то допускается присутствие также всех символов, расположенных между ними.



C.5.1. Назначение потоков.


Ввод/вывод в операционных системах (как MS-DOS, так и UNIX) может быть организован двумя принципиально разными способами. Первый способ - это прямое программирование устройств ввода/вывода (дисковода, экрана, модема, клавиатуры). Он может быть организован на различных уровнях (непосредственное программирование устройств, использование сервисных средств операционной системы, смешанный подход и т.д.), но суть его при этом не меняется. Каждая программа, написанная с использованием этого способа, может работать только с этим устройством и ни с каким другим. В настоящее время используется именно этот способ. Именно с помощью этого подхода (точнее, путем "косвенного" программирования периферийных устройств через драйверы этих устройств) и реализован классический WIMP - интерфейс, о котором уже было много сказано в предыдущей главе. Он позволяет создавать красивые и довольно содержательные средства общения с пользователем (меню, окна и тому подобное), а современные технологии позволяют программе при установке автоматически настраиваться на установленное на компьютере оборудование. Но у этих систем есть недостаток: они не могут принять данные с устройств и передать данные устройствам, для работы с которыми они не созданы. Например, нельзя данные вводить с модема, если программа работает только с клавиатурой. Чтобы осуществить это, используют другой способ: ввод/вывод с использованием потоков. В этом случае каждое устройство рассматривается операционной системой как файл, куда можно поместить и откуда можно взять информацию. Так же, как информация, записанная в файл, рассматривается операционной системой как единое целое, не зависимо от способа записи его на диске, так и физическая реализация процесса ввода/вывода информации устройством никак не отражается на работе пользователя.



C.5.2. Ограничение потоков.


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



C.5.3. Определение и классификация потоков.


Поток , скажем так, представляет собой некоторый буфер в памяти, куда поступает или откуда выбирается информация. Существуют следующие стандартные потоки:

1. Стандартный поток ввода - это обычно клавиатура.

2. Стандартный поток вывода - это обычно монитор.

3. Стандартный поток вывода ошибок и диагностических сообщений (стандартный поток ошибок) - это обычно дисплей (монитор).



C.5.4. Переназначение потоков.


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

> - переназначает стандартный поток вывода другому устройству (или файлу). Если этот файл существует, он очищается, и на его место записывается новая информация. Используется в DOS и UNIX. В UNIX те же действия может осуществлять конструкция 1>.
>> - То же самое, но если файл существует, то новая информация записывается в конец этого файла. Используется в DOS и UNIX. Для UNIX также можно использовать конструкцию 1>>.



C.5.5. Переназначение стандартного потока ошибок (в UNIX).


Обычными средствами DOS не может перенаправить стандартный поток ошибок. В UNIX для этого можно использовать команды 2> и 2>>, соответствующие вышеприведенным для стандартного потока вывода.

Для перенаправления в UNIX стандартного потока ошибок в стандартный поток вывода используется конструкция >$ (по умолчанию в UNIX стандартному потоку ввода присваивается номер 0, стандартному потоку вывода - 1, а стандартному потоку ошибок - 2. Конструкция в UNIX 0 >$ 2 переназначает стандартный поток ввода в стандартный поток ошибок, то есть все символы, введенные в этом сеансе с клавиатуры, тут же отображаются на экране, и их нельзя перенаправить в файл).



C.5.6. Перенаправление потока ввода.


Переадресация стандартного ввода осуществляется конструкцией < для DOS и UNIX и 0> только для UNIX.

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

program < indata.dat >> outdata.txt

В данном примере входные данные программы program читаются из файла indata.dat и записываются в файл outdata.txt.

В примере:

sort < mylist > prn

данные из файла mylist сортируются стандартной программой MS-DOS sort и результат выводится на принтер.



C.5.7. Конвейерная обработка.


Символы переадресации очень удобны, но иногда бывает необходимо организовать последовательность программ, выполняющих обработку информации, причем результат редыдущей программы является исходным для следующей . При этом промежуточные данные желательно никуда не записывать. Чтобы организовать такую обработку, используют знак '|' конвейера . Команды-"цепочки" такой обработки данных просто записываются в одну строку в порядке их вызова для обработки данных, и отделяются одна от другой знаком конвейера '|'. Пример:

sort < mylist | more.

В этом примере данные из файла mylist сортируются программой sort и постранично выводятся на экран программой more.

В UNIX тоже возможна переадресация потока с одновременным выводом данных на экран, и даже переадресация на два разных устройства. Для переадресации стандартного вывода в файл с одновременной выдачей информации на экран используется команда tee. Например, команда cat в UNIX позволяет просматривать файл. Следующая конструкция:

cat first | tee second

копирует файл first в файл second, одновременно показывая его на экране.



C.5.8. Перенаправление вывода на принтер.


Для вывода данных на принтер используются конструкции:

в DOS > prn в UNIX lpr

Еще один пример: команда

cat first | tee second | lpr

копирует файл first в файл second, одновременно распечатывая его на принтере.

Командой lpr можно также вывести несколько файлов на печать. Подробности смотри ниже.



C.5.9. История возникновения потоков в MS-DOS.


Исторически первая версия MS-DOS основывалась на многоплатформенной операционной системе для восьмиразрядных процессоров - CP/M. От нее она унаследовала и способ работы с файлами - через контрольные блоки файлов (File Control Block, FCB). Но уже во второй версии MS-DOS стала использоваться позаимствованная из операционной системы UNIX работа с файлами через дескрипторы файлов (File Handle). Одновременно с реализацией метода дескрипторов файла в MS-DOS из UNIX перешел поточный механизм организации файлов и возможность перенаправления потоков. с тех пор работа с файлами через FCB стала анахронизмом и поддерживается в операционных системах фирмы Microsoft (вплоть до Windows 98) лишь для совместимости со старыми версиями.

Следует также отметить, что термины "FCB", "дескрипторы файлов", "потоки" употребляются применительно к интерфейсу операций ввода/вывода операционных систем, а не для файловых систем как таковых. Так, использование для работы с файлами метода дескрипторов может происходить и в операционной системе MS-DOS с файловой системой FAT, и в Windows 2000 с NTFS, и в Novell NetWare с NWFS, и в Linux с NFS!



C.5.10. Резюме.


Итак, в этом разделе Вы кратко познакомились с понятием потока, дескриптора файла в интерфейсе ввода/вывода операционных систем, а также научились перенаправлять потоки операционных систем. Понятие потока тесно связано с понятиями "буфер ввода/вывода" и "кэширования диска". Об этих понятиях уже говорилось во втором выпуске данной серии. В этой части объяснилось назначение этих элементов. Также Вы познакомились с понятием "конвейер" и правилами его использования.

Напоследок приводим таблицы, в которой кратко приводятся данные, описанные в этом разделе.

Номер Название потока в UNIX Устройство
0 Стандартный поток ввода консоль, клавиатура
1 Стандартный поток вывода консоль, дисплей
2 Стандартный поток ошибок дисплей

Устройство Обозначение в DOS.
Консоль CON
1-й параллельный порт LPT1
2-й параллельный порт LPT2
Принтер (синоним LPT1) PRN
1-й последовательный порт COM1
2-й последовательный порт COM2
3-й последовательный порт COM3
4-й последовательный порт COM4
Модем (синоним COM1) AUX
Пустое устройство NUL

Символ Смысл перенаправления
> Перенаправляет стандартный вывод на другое устройство или в файл. Содержимое файла при этом теряется.
>> Перенаправляет стандартный вывод в файл. Содержимое файла не теряется. Запись идет в режиме добавления.
< Осуществляет (перенаправляет) стандартный ввод с другого устройства или из файла.
| Символ конвейерной обработки. Выходные данные работы программы, расположенной слева, передаются на вход программы, расположенной справа от знака конвейера.



C.6.1. Назначение опций.


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



C.6.2. Общий вид опций


Опции имеют вид: -<набор символов>

Для MS-DOS возможно также: /<набор символов>

Примечание: в некоторых командах MS-DOS допускается использовать для обозначения опций только слэш ('/').

Опции указывают, в каком режиме должна работать программа и как обрабатывать данные. Если не указать опции, то режим работы и обработка данных устанавливаются по умолчанию, то есть такими, какими их выбрал разработчик программы.



C.6.3. Определение параметра


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

dir /0:GEN -W * exe
(опции) (параметр)



C.6.4. Порядок следования опций.


Как правило, порядок опций , в отличие от порядка появления параметров в командной строке, произволен . Некоторые опции и параметры не сочетаются друг с другом, то есть присутствие одних исключает присутствие других и тому подобное. Чтобы избежать неприятных сообщений об ошибках, нужно проверить по документальным программам совместимость опций и параметров.

Следует отметить, что для большинства разновидностей операционной системы UNIX допускается записывать опции слитно. Например, следующие записи эквивалентны:

ls -l -R

и

ls -lR

В MS-DOS такое объединение запрещено! При этом сообщение об ошибках выводится не всегда - просто вторая опция игнорируется. Так, правильно писать

pkzip -aex -r my.zip

Запись же

pkzip -aexr my.zip

будет эквивалентна

pkzip -aex my.zip



C.6.5. Замечания об опциях.


Использование большого числа опций - особенность интерфейса командной строки в операционной системе MS-DOS. В интерфейсе командной строки операционных систем UNIX широко применяется принцип умолчания. Использование этого принципа доведено "до логического конца", так что опции в командной строке UNIX практически не приходится набирать. Команда сама определяет, что и когда ей нужно делать в данное время и в данном месте. Однако вследствие этого эти операционные системы перегружены системными переменными и файлами конфигураций.



C.6.6. Резюме.


В данном разделе Вы разобрались с понятиями "опция" и "параметр" в интерфейсе командной строки. Вы узнали, что опции являются необязательными элементами в командах, и что порядок их следования произволен. Теперь Вы, пожалуй, знаете все об интерфейсе командной строки и можете самостоятельно работать в командной строке любой операционной системы.

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



Esc-последовательности


Последовательность Описание
Esc[2J Очистка экрана и перевод курсора в левый верхний угол экрана
Esc[K Очистка строки от курсора и до конца строеи
Esc[row,colH Перемещение курсору в указанную строку (параметр row меняется в пределах от 1 до 25 для режима 80x25) и в указанный столбец (col меняется от 1 до 80 для режима 80x25).
Esc[row,colf Синоним Esc[row,colH
Esc[numA Перемещение курсора на num строк вверх
Esc[numB Перемещение курсора на num строк вниз
Esc[numC Перемещение курсора на num позиций вправо
Esc[numD Перемещение курсора на num позиций влево
Esc[s Сохранение текущих координат курсора в специальном буфере
Esc[u Восстановление координат курсора, сохраненных в специальном буфере
Esc[6n Вывод текущих координат курсора в спецмальном формате Esc[row,colR
Esc[=7n Включение автоматического перевода курсора на следующую строку (автоматическое добавления символа EOL в конец строки ввода)
Esc[=7l Включение автоматического перевода курсора на следующую строку
Esc[=numh Выбор режима работы дисплея
  Параметр num может принимать значения:
  0 - 40x25 монохромный текст
  1 - 40x25 цветной текстовый режим
  2 - 80x25 монохромный текст
  3 - 80x25 цветной текст
  4 - 320x200 4-х цветный графический режим
  5 - 320x200 монохромная графика
  6 - 640x200 монохромная графика
  7 - разрешение "заворачивания" изображения
  13- 320x200 цветной графический режим
  14- 640x200 16-ти цветный графический режим
  15- 640x350 монохромный графический режим
  16- 640x350 16-ти цветный графический режим
  17- 640x480 монохромный графический режим
  18- 640x480 16-ти цветный графический режим
  19- 320x200 256-ти цветный графический режим
Esc[numm Параметры
  0 - нормальное изображение (белые символы на черном фоне)
  1 - выделение яркостью
  4 - выделение подчеркиванием (только на монохромных мониторах)
  5 - выделение мерцанием символов
  7 - инверсное изображение
  8 - скрытый текст (только на монохромных дисплеях)
  Для установки цвета и фона необходимо использовать:
  30- черные символы
  31- красные символы
  32- зеленые символы
  33- желтые символы
  34- синие симврлы
  35- фиолетовые символы
  36 - бирюзовые символы
  37- белые символы
  40- черный фон
  41- красный фон
  42- зеленый фон
  43- желтый фон
  44- синий фон
  45- фиолетовый фон
  46- бирюзовый фон
  47- белый фон
<


/p> Для сброса всех установок команды prompt необходимо в командной строке набрать команду prompt без параметров .

Если на компьютере вместе с операционной системой MS-DOS установлена операционная оболочка Microsoft Windows 3.1x, то в сеансе MS-DOS в оконном режиме будет отображаться приглашение по-умолчанию. Для его смены необходимо установить переменную WINPMT . Формат этой команды:

SET WINPMT=текст

где текстом выступает последовательность параметров приглашения. Они будут теми же, что и в команде MS-DOS.

Также необходимо отметить, что текст приглашения prompt и WINPMT записывается в системное окружение компьютера. Поэтому, если Вы использовали слишком длинное приглашение, то Вы можете быстро исчерпать область памяти для системного окружения длиной 512 байт. Чтобы этого не произошло, увеличьте область системного окружения командой SHELL в файле Conaig.sys. Рекомендуемый автором размер системного окружения - 1024 байта .

Приглашение командной строки MS-DOS будет отображаться только в ее "чистой" командной строке. При загрузке операционной оболочки типа Norton Commander, Volkov Commander и DOS Navigator системное приглашение всегда будет иметь вид:

<диск>:\<путь>>,

например:

C:\NC>

Примеры использования команды prompt.

1. Стандартное приглашение MS-DOS:

prompt $n$g

2. Стандартное приглашение файловой оболочки:

prompt $p$g

3. В верхнем правом углу будет постоянно светиться строка с текущим днем недели, датой и временем:

prompt $e[s$e[1;33;44m$e[1;53H$d$e[1;69H$t$e[0m$h$h$h$h$h$h $e[25;1H$e[1:31;40m$e[u$p$e[0;32;40m$g



Назначение клавиш операциям в командной строке


Действие DOS Doskey NP *) NE **) DosShell Windows 95 NetWare OS/2 UNIX
                 
Ввод текущей строки Enter Enter Enter Enter Enter Enter Enter Enter Enter
Ввод символа "конец файла" Ctrl+Z. F6 Ctrl+Z. F6 - ***) - - - - - -
Очистка всей командной строки и переход к следующей (новой) строке. Esc - - - - - Esc - -
Очистка всей командной строки - Esc Esc Esc Esc Esc - Esc Ctrl+U
Включение/выключение режима вставки символов - Ins Ins Ins          
                   
Движение курсора в командной строке:                  
на символ влево - "стрелка влево" Ctrl+S "стрелка влево", Ctrl+S "стрелка влево" "стрелка влево" "стрелка влево" "стрелка влево" "стрелка влево", Ctrl+B
на символ вправо - "стрелка вправо" Ctrl+D "стрелка вправо", Ctrl+D "стрелка вправо" "стрелка вправо" "стрелка вправо" "стрелка вправо" "стрелка вправо", Ctrl+F
на слово назад - Ctrl + "стрелка влево" Ctrl + "стрелка влево" Ctrl + "стрелка влево" - Ctrl + "стрелка влево" ? ? -
на слово вперед - Ctrl + "стрелка вправо" Ctrl + "стрелка вправо" Ctrl + "стрелка вправо" - Ctrl + "стрелка вправо" ? ? -
в начало строки - Home Ctrl+Home Home Home Home Home Home -
в конец строки - End Ctrl+End End End End End End -
                   
Удаление:                  
Стирание предыдущего символа Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace, Del, Ctrl+D
Удаление текущего символа (на который указывает курсор) Del Del Del Del Del Del Del Del Ctrl+D
Удаление предыдущего слова - ? Ctrl + Backspace Ctrl + Backspace - Ctrl + Backspace - ? -
Удаление команды до конца, начиная с позиции курсора - Ctrl+End     - - - ? -
Удаление символов, начиная с символа, указанным текущим положением курсора, по символ, указанный Вами F4 F4 - - - - - ? -
                   
Работа с буфером                  
Копирование одного символа командной строки в буфер F1 F1 - - - - - ? -
Копирование из буфера всех символов, но не включая символа, введеного после этой клавиши F2 F2 - - - - - ? -
Копирование содержимого буфера в командную строку F3 F3, "стрелка вверх" Ctrl+E F3, "стрелка вверх", Ctrl+E - - "Стрелка вверх" "Стрелка вверх" !, "Стрелка вверх"
Копирование текущей команды в буфер и очистка командной строки, без выполнения команды F5 F5     - - - ? -
                   
Вывод списка команд, запомненных в буфере - doskey/H, F7 Alt+F8 Alt+F8 - F4 - ? history
Выбор предыдущей команды из списка - "стрелка вверх" Ctrl+E "стрелка вверх", Ctrl+E - "стрелка вниз" "Стрелка вверх" "Стрелка вверх" history + "Стрелка вверх", Ctrl+P
Переход к следующей команде из списка - "стрелка вниз" Ctrl+X "стрелка вниз", Ctrl+X - "стрелка вверх" "стрелка вниз" "стрелка вниз" history + "стрелка вниз", Ctrl+N
Переход к первой команде из списка - PgUp - - - - ? ? ! 1, Esc <
Переход к последней команде из списка - PgDn, F3 - - - - ? ? !, Esc >
Очистка буфера ранее введеных команд - Alt+F7 - - - -      
Поиск ранее запомненной команды - <первые символы и шаблоны> F8 - - - <первые символы и шаблоны> ? ? ! <первые символы или шаблоны>
Вывод команды с указанным номером - F9 + <номер> - - - - ? ? ! + <номер>
                   
Прочие сочетания                  
Печать на принтере содержимого экрана (однократное) PrtScr PrtScr PrtScr PrtScr PrtScr - - ? ?
Печать на принтере всех символов, набранных на клавиатуре и выводимых на экран Ctrl+PrtScr, Ctrl+P Ctrl+PrtScr, Ctrl+P Ctrl+PrtScr Ctrl+PrtScr Ctrl+PrtScr - - ? -
Приостанвка вывода текста на экран Pause, Ctrl+S Pause, Ctrl+S Pause, Ctrl+S Pause, Ctrl+S - Pause - ? ?
Прекращение выполнения программы Ctrl+Break, Ctrl+C Ctrl+Break, Ctrl+C Ctrl+Break, Ctrl+C Ctrl+Break, Ctrl+C - - - ? -
Перезагрузка компьютера Ctrl + Alt + Del Ctrl + Alt + Del Ctrl + Alt + Del Ctrl + Alt + Del Ctrl + Alt + Del Ctrl + Alt + Del - Ctrl + Alt + Del Ctrl + Alt + Del
Переключение на формат клавиатуры США Ctrl + Alt + F1 Ctrl + Alt + F1 Ctrl + Alt + F1 Ctrl + Alt + F1 Ctrl + Alt + F1 - - - -
Переключение на национальный формат клавиатуры Ctrl + Alt + F2 Ctrl + Alt + F2 Ctrl + Alt + F2 Ctrl + Alt + F2 Ctrl + Alt + F2 - - - -

*) Файловая оболочка (типа Norton Commander) с включенными панелями.

**) Файловая оболочка с выключеными панелями.

***) Прочерк означает отсутствие реализации этого действия. Знак вопроса - автору ничего не известно о реализации этой функции и назначение клавиш.

Условные обозначения: DOS - чистый MS-DOS, без загруженных драйверов командной строки. Doskey - MS-DOS с загруженным драйвером doskey, NP - файловые оболочки Norton Commander, Volkov Commander и др. с включенными панелями, NE - те же оболочки с выключенными панелями. DosShell - пункт Run (Выполнить) оболочек DosShell и Microsoft Windows 3.xx. Windows 95 - пункт Run (Выполнить) операционных систем Microsoft Windows 95/98/2000/NT4. Novell - операционные системы Novell NetWare версий 3.1x и 4.xx. OS/2 - командная строка операционной системы IBM OS/2 Warp. UNIX - различные клоны UNIX (IRIX, SCO UNIX, HP-UX, Linux).



С.3.2. Особенности запуска из командной строки сервера Novell NetWare.


Обычно команда запуска выполняемых модулей в программе Novell NetWare Server выглядит следующим образом:

load <имя модуля> <параметры>

Таким образом запускаются программы Novell NetWare (с расширением *.NLM) и ее драйверы (с расширениями *.DSK и *.LAN). Перед определением переменных окружения Novell NetWare, а также настройки ее параметров и для запуска утилит Ncopy и Ndir идентификатор Load указывать НЕ НУЖНО .



C.III. Специальные символы команды Prompt


Символ Команда в системном окружении
 
$Q Вывод символа "="
$$ Вывод символа "$"
$T Вывод текущего времени.
$D Вывод текущей даты
$P Вывод буквы текущего диска и имени текущего каталога
$V Вывод текущей версии MS-DOS
$N Вывод буквы текущего диска
$G Вывод символа ">"
$L Вывод символа "<"
$B Вывод символа "|"
$_ Переход в начало следующей строки
$E Вывод символа Esc (ASCII 27)
$H Стирание предыдущего символа.



D.0. Введение


Из выпуска серии "Основы информационных систем", посвященному дискам и файловым системам Вы узнаете, что такое файлы. В этой же части автор как бы рассмотрит файлы "с другой стороны", а именно со стороны пользователя операционной системы. Благодаря реализации семиуровневой эталонной модели взаимодействия протоколов ISO для работы файлов во всех операционных системах, пользователю уже не обязательно знать, к какому контроллеру подключен диск с его данными, под какую файловую систему размечена его поверхность, к какому компьютеру он подключен и другие более специальные вопросы. Непосредственно с прикладными программами взаимодействует лишь редиректор, который обеспечивает доступ к блочным устройствам ввода-вывода. Именно реализацией редиректора и различаются интерфейсы и взаимодействия прикладных программ с файловыми системами (смотри рисунок D.1.) Поэтому далее рассматривается лишь интерфейс различных операционных системах, который определяется в основном редиректором, с учетом ограничений различных файловых систем.

Рис. D.1. Классификация интерфейсов жестких дисков в соответствии с семиуровневой эталонной модели протоколов ISO.



D.1.1. Содержимое файлов


Файлы могут содержать в себе любую информацию. Это могут быть как программы, выполняемые под управлением какой-либо операционной системы, либо файлы с данными для этих программ. Независимо от операционных систем персональных компьютеров все файлы можно разделить на текстовые и бинарные (по другому - двоичные ) файлы. Текстовыми файлами называют файлы, в которых используются в качестве информационных символы с шестнадцатеричными кодами 20h-7Eh (32 -126 десятичными) и 80h-7Eh (128 - 254 десятичными). В качестве служебных кодов и только в качестве них допускается использовать символы с кодами:

09h (9) (HT) - горизонтальная табуляция;

0Ah (10) (LF,EOL) - новая строка (перевод строки);

0Bh (11) (VT) - вертикальная табуляция;

0Ch (12) (FF) - новая строка (перевод страницы);

0Dh (13) (CR) - возврат каретки;

1Ah (26) (SUB,EOF) - конец файла. *

Примечание: При визуализации текстового файла символ горизонтальной табуляции заменяется несколькими (обычно восемью) проблемами, символ вертикальной табуляции - несколькими пустыми строками. Символ возврата каретки переводит курсор (или позицию вывода нового символа) на первый элемент начала строки. Символ перевода строки выводит следующий символ на своем месте, только строкой ниже. Поэтому символ EOL (End-of-Line) ы действительности - это последовательность символов CR/LF. Все символы, расположенные после символа конца файла, при выводе игнорируются.

Среди всех текстовых файлов можно выделить подмножество чистых ASCII файлов , информационные символы которых имеют только коды с номерами 20h - 7Eh. Двоичные же файлы представляют из себя последовательность из любых символов. Их длина определяется из заголовка файла. Это разделение является важным для различных операционных систем, поскольку назначение и обработка бинарных и текстовых файлов в операционных системах различаются.



D.1.2. Другие виды классификации файлов


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



DOS для организации файловой системы


Используется MS- DOS для организации файловой системы на дискетах и жестких дисках размером до 20 Мбайт . В настоящее время для организации разделов на жестких дисках не используется. Ее заменила файловая система FAT16. Работа с файлами в данной файловой системе полностью идентична работе в файловой системе FAT16, о которой будет рассказано ниже.


в этой файловой системе состоит


Имя файла в этой файловой системе состоит из одного или не более чем восьми символов, которые приведены в нижеследующей таблице. Кроме того, у файловых систем программных продуктов фирмы Microsoft присутствует так называемое расширение , отделяемое от имени файла точкой. Это расширение неявно указывает, какой программой создан или будет обрабатываться файл.

Примечание: В операционных системах UNIX такого понятия нет: там расширение - это просто часть имени.

В MS-DOS расширение может содержать от нуля до трех символов. Ограничения на используемые символов в расширении - те же, что и в имени файлов.

Таблица D.I. Используемые символы в имени файлов в MS-DOS.

Тип используемых символов Обозначение
Прописные и строчные латинские буквы A-Z и a-z (*)
Цифры 0 - 9
Служебные символы: _~!@#$%^&(){}'`
Прописные и строчные русские буквы (**) А-Я и а-я
Примечание (*): MS-DOS не делает различия между строчными и прописными буквами. При выводе имени все буквы преобразуются в прописные.

Примечание (**): русские буквы доступны лишь в пан=европейской и русской локализованной версии MS-DOS.

В MS-DOS расширения играют очень важную роль. Так, исполняемые файлы MS-DOS имеют следующие расширения (смотри таблицу D.II.)

Таблица D.II. Расширения исполняемых файлов.

Расширение Признак файла
.COM Двоичный исполняемый под MS-DOS файл. Не имеет заголовка. Максимальный размер - 64 Кбайт.
.EXE Двоичный исполняемый под управлением MS-DOS или MS Windows самонастраивающийся файл. Содержит заголовок. Не имеет ограничений на длину.
.BAT Командный файл MS-DOS. В нем записывается последовательность двоичных программ, выполняемых под управлением MS-DOS.
На имена файлов в операционных системах MS-DOS, кроме ограничений на длину и тип символов, накладываются дополнительные ограничения. Следующие имена файлов зарезервированы за внешними устройствами (см. таблицу D.III).

Таблица D.III. Зарезервированные имена MS-DOS.

Имя Устройство.
LPT1 - LPT4 Устройства, подключенные к параллельным портам компьютера. Цифра обозначает номер порта.
PRN Синоним LPT1, Обычно к этому порту подключен принтер.
COM1 - COM8 Устройства, подключаемые к последовательным портам компьютера. Цифра обозначает номер порта.
AUX Синоним COM1. Обычно к нему подключается модем или мышь.
CON Консоль. При выводе символов - это экран монитора, а при вводе - клавиатура.
NUL Пустое устройство. Все операции ввода - вывода на это устройство игнорируются. При чтении с этого устройства выдается символ конца файла, а при записи символы пропадают, но программе сообщается об успешном выводе.
Эти вышеперечисленные имена устройств не могут функционировать как имена файлов. Однако применение их в качестве расширений допустимо! Примеры:

PRN.TXT - недопустимое имя файла.

TEXT.PRN, NEW.AUX - допустимые имена файлов.

Поскольку каталог является одним их видов файла (смотри выше раздел A.1.2.), то на него действуют те же ограничения на имена, что и на файлы.

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


D.2.3. VFAT


Впервые появилась в операционной системе Microsoft Windows 95. Она очень похода на файловую систему FAT16. Для пользователя существенны следующие отличия от FAT16:

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

2. Максимальная длина имени файла с расширением - не 12 символов, как в FAT16, а 255. Вследствие этого не нужно придумывать какие-либо сокращения для имен файлов, чтобы уложиться в прокрустово ложе из восьми символов.

3. Имя файла в этой файловой системе хранится в нескольких местах. В одном из них храниться истинное длинное имя файла в кодировке Windows, а в другом - сокращенное до восьми символов имя файла в кодировке DOS. Это сделано для совместимости со старыми версиями FAT, а именной - FAT12 и FAT16. Именно они и только они доступны в операционной системе MS-DOS, PC-DOS и DR-DOS, а также в операционных оболочках Microsoft Windows v. 2.00 - 3.11. Это имя образуется следующим образом (см. Фигурнов 7???):

a) Длинное имя преобразуется в кодировку OEM (в "родную" кодировку MS-DOS).

b) Если имя файла уже удовлетворяет требованиям DOS, то дальнейшие преобразования не проводятся. В противном случае - переход к пункту c)

c) Длинное имя переводится в верхний регистр. Например, файл abc.txt становится ABC.TXT .

d) Если после этого имя файла удовлетворяет требованиям DOS, то оно и будет служить коротким именем. В противном случае - переход к пункту e).

e) Из длинного имени удаляются все пробелы, а символы "+", "," , ";", "=", "[" и "]", недопустимые в длинных именах, заменяются символами подчеркивания.

f) Если в имени имеются точки, то часть имени за последней из них рассматривается как расширение. Расширение обрезается справа до трех символов. Все точки из имени, кроме последней, удаляются.

g)Если длина имени файла по прежнему превышает 8 символов,то полученное имя урезается до шести символов.
Получается как бы "укороченное" имя.

h) К этому " укороченному имени добавляется порядковый номер, записанное через тильду.

Пример

Таблица D.IV.. Соответствие длинных и коротких имен файлов.

Длинное имя Короткое имя
Мои документы МОИДОК~1
Письмо от 12.09.99.doc ПИСЬМО~1.DOC
Письмо клиента на претензию.doc ПИСЬМО~2.DOC
3. В именах фалов разрешается использовать дополнительно следующие символы:

a) Пробелы

b) Символы +.,:=[]

в) Все символы национальных алфавитов и псевдографики.

По-прежнему нельзя использовать управляющие символы и символы /\:*?"<>|

4. В длинных именах разница между прописными и строчными буквами сохраняется - это позволяет обеспечить удобочитаемость файлов. Однако в одном каталоге недопустимы имена файлов, различающихся только регистром (т.е. строчными и прописными) букв и более ничем! Это объясняется алгоритмом преобразования длинных имен к коротким, о котором смотри пункт 2. По другому это можно сформулировать так: в одном каталоге не могут находится одновременно два файла или каталога с одинаковыми короткими именами.

5. Длина полного имени (длинного имени + "длинное" путевое имя) не должно превышать 260 символов.

6. При копировании файлов из VFAT в FAT16 и особенно в FAT12 длинные имена как бы "маскируются", записываясь в области заголовка файла, не принимающих основного участия в функционировании файловой системы. Однако программы, работающие с файлами на более низком уровне - программы оптимизации файлов на диске, резервного копирования, многие архиваторы, некоторые антивирусные программы, а также все программы, использующие для открытия файлов метод "управляющих блоков" (см. Джордейн, ???). могут стереть эту информацию, в результате чего длинные имена будут потеряны. Поскольку потеря длинных имен может привести к серьезному сбою в программах, их использующих, и в операционной системе, автор НАСТОЯТЕЛЬНО НЕ РЕКОМЕНДУЕТ пользоваться устаревшими версиями программ для MS-DOS и Microsoft Windows v. 2.0 - 3.1x в операционных системах Microsoft Windows 95/98/NT, IBM OS/2 Warp и LINUX.

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

Пример:

99.10.05 - Письмо от 05 мая 1999 г.doc

вместо просто

Письмо от 05 мая 1999 г.doc


С точки зрения прикладных программ


С точки зрения прикладных программ она ничем не отличается от VFAT и FAT16. Различия проявляются только на уровне представления и сеансовом уровне (то есть на уровне организации FAT.


D.2.5. HPFS, NTFS


Аналогичны VFAT (на уровне редиректора). Для нелокализованных версий нежелательно использовать в именах файлов и каталогов символы национальных алфавитов (с кодами 128-255).



D.2.6. NWFS


Файловая система NetWare (NWFS), как и ы операционной системе DOS, имеет несколько редакций. В связи с тем, что она долгое время "обслуживала" MS-DOS, между этими системами есть много общих моментов. Как и MS-DOS, эта операционная система видоизменялась, пополнялась новыми командами и новыми сетевыми возможностями. В этом пункте будет дано описание NWFS файловых серверов Novell NetWare версий от 3.12 до 5.0, широко используемых в работе на конец 1999 года.



D.2.7. NFS


В любой UNIX- подобной операционной системе используется файловая система NFS (Network File System). Эта файловая система монтируется из удаленных систем и предназначена для работы UNIX - подобной операционной системе работать как файловый сервер. Кроме этих файловых систем UNIX подобные операционные системы могут поддерживать множество других. Например, LINUX дополнительно поддерживает файловые системы Minux (с ограничением длины имен файлов в 30 знаков), собственные файловые системы ext и ext2, Xiaf, FAT, hpfs, System V, CDFS и UMS-DOS.

Все файловые системы UNIX имеют следующие свойства:

Имена файлов в UNIX не содержат расширений.

В именах делается различие между прописными и строчными буквами.

На выполнение UNIX можно запустить любой файл. Ответственность за его формат несет пользователь этой системы.

Имена файлов могут содержать следующие символы:

Буквы A-Z и a-z;

Цифры 0123456789

Служебные символы: _.,

Имена файлов должны обязательно начинаться с буквы или знака подчеркивания (кроме некоторых зарезервированных файла конфигураций).

Использование других символов не рекомендуется (хотя с помощью режима noglob можно разрешить использовать в именах файлов все символы ASCII).

Пример правильного использования имен файлов:

myfile

MyFile

job11

_mail33.txt.tar.Z

Обратите внимание: первый и второй файл интерпретируются UNIX как два разных файла (в отличие от VFAT).

Неправильные имена файлов:

123view.exe - имя начинается с цифры;

Letter~1.doc - содержит знак ~;

My Documents - содержит пробел;

Моеписьмо.txt - содержит русские буквы.

Содержание | Вперед



D.2. Параметры файлов


Любой файл содержит в служебных полях следующую информацию о себе. Она включает имя, дату и время создания и модификации, свой размер, и другие атрибуты, зависящие от реализации файловой системы. То же относится и к каталогу. Имя и тип любого файла (и каталога) должны быть уникальными в пределах того каталога, в котором они находятся. Рассмотрим ограничения, налагаемые на файлы операционными системами.



Файлы и каталоги


Следует отметить, что существует специальный вид файла, называемый каталогом (catalog) , или директорией (ditectory) . В нем содержатся ссылки на другие файлы. Поскольку ссылки на эти файлы содержатся лишь в одном из каталогов, для пользователи эти файлы как бы расположены в каталоге. На самом деле, конечно, все файлы находятся в секторах диска. Но это истинно лишь на физическом уровне, а на уровне представления данных файлы находятся в каталогах. Преимущества каталогов, особенности их работы с ними будут описаны ниже. Следует только отметить, что каталоги появились не сразу и не во всех операционных системах. Они возникли там, где требовался большой объем хранимой информации (например, в файловых системах жестких дисков) и, следовательно, возникли сложности с организацией и размещением большого числа файлов. Эти преимущества каталогов следует использовать при работе с операционными системами, содержащих каталоги.



на уровне редиректора почти


Файловая система Novell NetWare 3. 12 на уровне редиректора почти полностью совпадает с файловой системой MS-DOS v. 6.22. Сетевые диски на сервере NetWare версии 3.12 для MS-DOS и Microsoft Windows 3.1x почти не отличаются от локальных. Однако при работе в операционных системах Microsoft Windows 95/98/NT наблюдаются существенное различие в работе сетевых и локальных дисков. Дело в том, что NWFS не поддерживает никоим образом VFAT. Поэтому преобразование длинных имен VFAT в NWFS будет происходить по следующей схеме:

a) Длинное имя преобразуется в кодировку OEM (в "родную" кодировку MS-DOS).

b) Если имя файла уже удовлетворяет требованиям DOS, то дальнейшие преобразования не проводятся. В противном случае - переход к пункту c)

c) Длинное имя переводится в верхний регистр. Например, файл abc.txt становится ABC.TXT .

d) Если после этого имя файла удовлетворяет требованиям DOS, то оно и будет служить коротким именем. В противном случае - переход к пункту e).

e) Из длинного имени удаляются все символы, недопустимые в FAT16.

f) Если в имени имеются точки, то часть имени за последней из них рассматривается как расширение. Расширение обрезается справа до трех символов. Все точки из имени, кроме последней, удаляются.

g)Если длина имени файла по прежнему превышает 8 символов,то полученное имя урезается до восьми символов.

Файловая система Novell NetWare 3.12 на уровне консоли файлового сервера.

На уровне консоли (командной строки) NWFS выглядит по-другому. Прежде всего, помимо основного раздела MS-DOS, доступного только для файлового сервера, операционная система Novell NetWare монтирует сбою файловую систему, NWFS, в виде отдельного тома *. По умолчанию всегда присутствуют тома SYS и USERS.

Примечание. Том отличается от логического диска тем, что во-первых, может располагаться на одном, а может занимать пространство (частями или целиком) на нескольких физических дисках. Во-вторых, том имеет дополнительную систему безопасности при хранении данных. Именно поэтому термин "том" применяется и для логических дисков Windows NT, имеющих свои средства для управления дисковым пространством.
Подробнее о томах и организации дисковой памяти смотри выпуск 3 серии "Основы информационных систем" (???). *)

В командной строке сервера NetWare доступ к разделу DOS происходит как и MS-DOS, а к смонтированным томам NWFS по шаблону:

<имя_сервера>:<имя_тома>\<путь>\<имя файла с расширением>

где <имя_сервера> - имя компьютера - сервера, заданное при инсталляции сетевой операционной системы Novell NetWare; <имя_тома> - имя смонтированного тома NWFS, а остальные параметры - обычные имена FAT16.

Пример пути для файлов в командной строке NetWare:

c:\lan\m31x.nlm

LUKOIL:SYS\SYSTEM\EDIT.NLM

Заметим, что в командной строке сервера NetWare можно запускать файлы с расширением *.com, *.exe и собственно модулей NetWare с расширением *.nlm. При этом загрузка на выполнение последних осуществляется с помощью команды load. Ее синтаксис:

load <путевое_файла_NetWare>

Отметим, что программой load можно загрузить файлы только с полным путевым именем. Допускается загрузка командой load без указания полного путевого имени программ, расположенных в директориях <имя_сервера>:SYS\SYSTEM и <имя_сервера>:SYS\PUBLIC. Однако если в качестве параметров загружаемого модуля требуется имя другого файла, то необходимо указать его полное сетевое имя вне зависимости от местоположения этого файла. Пример:

LOAD EDIT.NLM LUKOIL:SYS\SYSTEM\AUTOEXEC.NCF


Файловая система этой операционной системы


Файловая система этой операционной системы мало отличается от файловой системы Novell NetWare 3.12. Однако в Novell NetWare v. 4.1x появилась служба каталогов Novell (Novell Directory Service, NDS). Благодаря ей рабочая станция подключается не к серверу NetWare, а к сети из серверов NetWare (а возможно, и к сети серверов Microsoft Windows NT). Также с этой системе осуществляется поддержка пространства имен OS/2 (файл OS2.NAM), Macintosh (MAC.NAM), Unix (NFS.NAM), FTAM (FTAM.NAM) и Microsoft Windows NT (только с NDS).

С точки зрения пользования консоли сервера в этой операционной системе все осталось без изменения.


Файловая система этой операционной системы


Файловая система этой операционной системы наконец то полностью поддерживает VFAT. Дополнительно для ее стандартной файловой системы можно сказать следующее:

NWFS поддерживает максимально:

- до 64 томов на один сервер;

- до 32 сегментов на один том;

- до 1 Тбайт на один том;

- до 4 Гбайт на один файл;

- до 16 млн. файлов на один сервер;

- до 100000 открытых файлов на один сервер;

- двухбайтовое представление символов (ANSI).

Дополнительно операционная система Novell NetWare поддерживает новый тип файловой системы - NSS (Novell Storage Service). Его заявленные параметры таковы:

- до 255 томов на один сервер;

- неограниченное число сегментов на один том;

- до 8 Тбайт на один том;

- до 8 Тбайт на один файл;

- до 8 трлн. файлов на один том;

- до 1 млн. открытых файлов на один сервер;

- представление символов в формате UNICODE.

Данные взяты из статьи Константин Пьянзин. NetWare 5 - новая ставка Novell //LAN. Журнал сетевых решений. - т.4 z 12 - декабрь 1998. - стр. 71-79.

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

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