Команда DOSKEY
Загружает в память программу Doskey, которая вызывает команды MS-DOS и позволяет вам редактировать командные строки, а также создавать и запускать макрокоманды. Doskey - это резидентная в памяти программа. После установки Doskey занимает около 3 килобайт памяти.
DOSKEY [/REINSTALL] [/BUFSIZE=размер] [/MACROS] [/HISTORY][/INSERT /OVERSTRIKE] [макроимя=[текст]]
Чтобы запустить программу Doskey с установками по умолчанию, дайте команду:
DOSKEY
Параметр макроимя=[текст] создает макрокоманду, которая выполняет одну или более команд MS-DOS (макрокоманду Doskey), "макроимя" задает имя, которое вы хотите присвоить макрокоманде, а "текст" задает записываемые команды.
Например, чтобы создать макрокоманду, выполняющую быстрое и безусловное форматирование диска, наберите:
doskey qf=format $1 /q /u
Чтобы выполнить такую макрокоманду, введите qf a:.
Параметр /REINSTALL устанавливает новую копию программы Doskey, даже если она уже установлена. В последнем случае /REINSTALL также очищает буфер.
Параметр /BUFSIZE=размер задает размер буфера, в который Doskey записывает команды и макрокоманды Doskey. По умолчанию это 512 байт. Минимальный размер буфера - 256 байт.
/MACROS выводит список всех макрокоманд Doskey. /HISTORY выводит список всех команд в памяти. Для вывода списка в файл вы можете использовать символ перенаправления (>). /MACROS можно сократить до /M, а /HISTORY - до /H.
/INSERT /OVERSTRIKE определяет, будет ли новый набираемый вами текст замещать старый. При указании параметра /INSERT новый набираемый в строке текст вставляется в старый (как при нажатии клавиши INSERT). При задании /OVERSTRIKE новый текст будет заменять старый. По умолчанию устанавливается /OVERSTRIKE. Временно изменить режим можно клавишей INSERT.
Для вызова команды можно после загрузки Doskey в память использовать одну из клавиш, перечисленных в следующей таблице:
Клавиша |
Действие | ||
стрелка вверх |
Вызывает предыдущую команду MS-DOS. | ||
стрелка вниз |
Вызывает следующую команду MS-DOS. | ||
PgUp |
Восстанавливает самую старую команду текущего сеанса. | ||
PgDn |
Восстанавливает последнюю команду текущего сеанса. |
Восстановленную Doskey командную строку можно редактировать. Команды редактирования Doskey и их функции описаны в следующей таблице:
Клавиша |
Действие |
Стрелка влево |
Перемещает курсор на символ назад. |
Стрелка вправо |
Перемещает курсор на символ вперед. |
CTRL+стрелка влево |
Перемещает курсор на слово назад. |
CTRL+стрелка вправо |
Перемещает курсор на слово вперед. |
HOME |
Возвращает курсор к началу строки. |
END |
Перемещает курсор в конец строки. |
ESC |
Стирает команду с экрана. |
F1 |
Копирует один символ из шаблона (буфера, содержащего последнюю набранную команду) в командную строку MS-DOS. |
F2 |
Выполняет в шаблоне поиск в прямом направлении следующей нажатой после F2 клавиши. Doskey вставляет текст из шаблона до заданного символа (не включая его). |
F3 |
Копирует остаток шаблона в командную строку. Doskey начинает копирование символов с позиции в шаблоне, соответствующей позиции, указанной курсором в командной строке. |
F4 |
Удаляет символы, начиная от текущей позиции до заданного символа. Чтобы использовать эту клавишу, нажмите F4 и наберите символ. Doskey выполняет удаление до этого символа, исключая его. |
F5 |
Копирует текущую команду в шаблон и очищает командную строку. |
F6 |
Помещает в текущую позицию командной строки символ конца файла (CTRL+Z). |
F7 |
Выводит на экран все сохраненные в памяти команды с соответствующими номерами (Doskey присваивает номера последовательно, начиная с первой команды). |
ALT+F7 |
Удаляет все сохраненные в памяти команды. |
F8 |
Ищет в памяти команду, которую вы хотите вывести. Наберите первые несколько символов искомой команды и нажмите F8. Doskey выводит последнюю команду, начинающуюся с данного текста. Повторное нажатие F8 приводит к поиску следующей такой команды. |
F9 |
Выводит подсказку для ввода номера команды и выводит ее на экран. |
ALT+F10 |
Удаляет все макроопределения. |
Символы |
Назначение |
$G или $g |
Перенаправляют вывод. Используйте эти символы для передачи вывода вместо экрана на устройство или в файл. Эквивалентны символу >. |
$G$G или $g$g |
Добавляют вывод в конец файла. Их можно использовать для добавления выводимых данных к существующему файлу или замены данных в файле. Эквивалентны >>. |
$L или $l |
Перенаправляют ввод. Используйте их для считывания вместо клавиатуры с устройства или из файла. Эквивалентны <. |
$B или $b |
Передает вывод макрокоманды в команду. Эквивалентны символу | в командной строке. |
$T или $t |
Разделяют команды. Используйте их для разделения команд при создании макрокоманд или наборе команд в командной строке Doskey. |
$$ |
Задает знак доллара ($). |
с $1 по $9 |
Представляет информацию командной строки, которую вы хотите определить при запуске макрокоманды. Это позволяет вам использовать в командной строке при каждом выполнении макрокоманды различные данные. Символ $1 в команде DOSKEY аналогичен %1 в командном файле. |
$* |
Представляет всю информацию командной строки, которую вы хотите задать при наборе имени макрокоманды. |
Символ $* - это подставляемый параметр, аналогичный параметрам $1 - $9 командного файла, однако все, что вы набираете в командной строке после имени макрокоманды, подставляется в макрокоманду вместо $*.
Чтобы выполнить макрокоманду, наберите имя макрокоманды в командной строке, начиная с первой позиции. Если макрокоманда была определена с помощью $* или параметра с $1 по $9, используйте для разделения параметров пробелы. Из командного файла выполнять макрокоманду нельзя, но для создания макрокоманды вы можете использовать команду DOSKEY в командном файле. Вы можете также создать макрокоманду, имя которой совпадает с именем команды MS-DOS. Это может оказаться полезным, например, если вы всегда пользуетесь командой с определенными параметрами. При этом:
- чтобы выполнить макрокоманду, начинайте набирать ее имя непосредственно после командной подсказки (без пробела);
- для выполнения команды DOS включите между именем команды и подсказкой один или более пробелов.
Для удаления макрокоманды наберите команду:
doskey макроимя=.
Приведем пример. Чтобы создать макрокоманду mv для перемещения файла или файлов, наберите команду:
doskey mv=copy $1 $2 $t del $1