Текущий диск и текущий каталог

В MS-DOS есть два важных понятия - текущий диск и текущий каталог.

Если в команде для MS-DOS имя диска не указывается, все операции выполняются над текущим диском. После загрузки операционной системы текущим является тот диск, с которого выполнялась загрузка. Если MS-DOS была загружена с жесткого диска, сразу после загрузки текущим будет диск C:. Если MS-DOS загружалась с дискеты, текущим будет диск A:. В последнем случае системное приглашение MS-DOS будет выглядеть следующим образом:

A:\>

Вы можете легко изменить текущий диск, если в ответ на системное приглашение MS-DOS введете имя нужного диска (не забудьте ввести двоеточие и нажать клавишу <Enter>). Вставьте в дисковод A: любую дискету (например одну из дискет, на которой записана MS-DOS), и введите команду:

C:\>a:

На лицевой панели НГМД загорится сигнальный светодиод и через некоторое время на экране появится системное приглашение:

A:\>

Если перед тем, как ввести эту команду, вы забудете вставить дискету, на экране появится сообщение:

Not ready reading drive A

Abort, Retry, Fail?

Вы можете вставить дискету в НГМД A: и нажать клавишу с буквой <R> (Retry), или отказаться от изменения текущего диска, нажав клавишу <F> (Fail). В последнем случае на экране появится сообщение:

Current drive is no longer valid>

Введите команду "c:" для того чтобы сделать текущим диск C:.

Если после того как вы изменили текущий диск на A: выдать команду dir, вы увидите на экране содержимое корневого каталога диска A:. Разумеется, все сказанное выше верно и для диска B:, а также для всех других дисков, имеющихся в вашем компьютере.

А как узнать, сколько всего дисков установлено в компьютере?

Диски обозначаются буквами латинского алфавита от A до Z включительно, причем не имеет значения, какие буквы - заглавные или прописные - вы для этого используете. Для того чтобы узнать, какие диски есть в вашем компьютере, можно попробовать сделать их все по очереди текущими, начиная с диска D: (есть более удобный способ, однако пока подойдет и этот). Если вы попытаетесь сделать текущим несуществующий диск, на экране появится следующее сообщение:

Invalid drive specification

При этом текущий диск останется прежним.

Теперь вы умеете изменять текущий диск и мы займемся каталогами.

Вы наверное, догадываетесь, что такое текущий каталог. Это каталог, в котором MS-DOS будет искать файл, если имя каталога не задано явно. Пуcть, например, на диске C: в каталоге dos лежит файл с именем edit.com. Полный путь к файлу указывается следующим образом:

c:\dos\edit.com

Если вы опустите имя диска, MS-DOS будет искать файл на текущем диске, при этом она будет искать его в каталоге dos, который расположен в корневом каталоге текущего диска:

\dos\edit.com

Если же вы не укажите ни имя диска, ни каталог, MS-DOS будет искать файл на текущем диске в текущем каталоге:

edit.com

Можно указать диск и не указывать каталог. В этом случае MS-DOS будет искать файл на указанном диске в текущем каталоге:

c:edit.com

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

Сразу после загрузки MS-DOS текущим становится корневой каталог диска, с которого выполнялась загрузка. Если MS-DOS загружалась с жесткого диска, текущим будет каталог C:\.

Для смены текущего каталога можно воспользоваться командой cd. Например, после ввода команды dir вы увидели, что в корневом каталоге диска C: лежит каталог с именем dos. Вы можете сделать каталог dos текущим, если в ответ на системное приглашение MS-DOS введете команду:

C:\>cd dos

Введите эту команду. Вид системного приглашения изменится:

C:\DOS>

Теперь после имени диска в системном приглашении вы видите имя текущего каталога.

Попробуйте теперь выдать команду dir снова. Вы увидите содержимое текущего каталога (так как команда dir была выдана без параметров), однако теперь будет показано содержимое каталога dos, а не корневого каталога диска C:, с которого выполнялась загрузка MS-DOS:

Volume in drive C is MS-DOS_6

Volume Serial Number is 1A78-8EAC

Directory of C:\DOS

. <DIR> 01/09/93 1:05

.. <DIR> 01/09/93 1:05

MEMMAKER EXE 118628 12/02/93 6:00

SIZER EXE 7169 12/02/93 6:00

CHKSTATE SYS 41600 12/02/93 6:00

EMM386 EXE 115294 12/02/93 6:00

HIMEM SYS 14224 12/02/93 6:00

MEMMAKER INF 1642 12/02/93 6:00

MEMMAKER HLP 17081 12/02/93 6:00

MEMMAKER STS 1504 08/09/93 9:24

SETVER EXE 12015 24/03/93 17:53

11 file(s) 329157 bytes

1566720 bytes free

Если бы в каталоге dos был бы другой каталог, например, с именем temp, его можно было бы сделать текущим при помощи команды cd temp:

C:\DOS>cd temp

Выдавая команды cd, вы можете подниматься по ветви дерева каталогов от корневого каталога до конца ветви (или спускаться, если вам это больше нравится). А как двигаться в обратном направлении?

Обратите внимание на следующие две строки, которые выводятся на экран по команде dir:

. <DIR> 01/09/93 1:05

.. <DIR> 01/09/93 1:05

Первая строка - это "второе имя" текущего каталога. Вы можете использовать его для ссылки на текущий каталог. Вторая строка обозначает каталог, в котором находится текущий каталог. Например, в нашем случае для каталога dos строка с именем ".." означает ссылку на корневой каталог диска C:.

Если вам надо вернуться назад по ветви дерева каталогов, вы можете ввести следующую команду:

C:\DOS>cd ..

После ввода этой команды вы окажитесь снова в корневом каталоге диска C:>, в чем можно убедиться по виду системного приглашения MS-DOS:

C:\>

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

C:\DOS\TEMP\MY>cd \

В качестве практического задания мы предлагаем вам провести исследование содержимого дисков и дискет вашего компьютера при помощи команд cd и dir.

Наши рекомендации