Поделиться через


doskey

Вызывает Doskey.exe, который вспоминает ранее введенные команды командной строки, редактирует командные строки и создает макросы.

Синтаксис

doskey [/reinstall] [/listsize=<size>] [/macros:[all | <exename>] [/history] [/insert | /overstrike] [/exename=<exename>] [/macrofile=<filename>] [<macroname>=[<text>]]

Параметры

Параметр Описание
/Переустановить Устанавливает новую копию Doskey.exe и очищает буфер журнала команд.
/listsize=<size> Указывает максимальное количество команд в буфере журнала.
/Макросы Отображает список всех макросов doskey doskey. Символ перенаправления (>) можно использовать с /macros для перенаправления списка в файл. Вы можете сократить /macros до /m.
/macros:all Отображает макросы doskey для всех исполняемых файлов.
/макросы:<exename> Отображает макросы doskey для исполняемого файла, указанного имени exename.
/история Отображает все команды, хранящиеся в памяти. Символ перенаправления (>) можно использовать с /history для перенаправления списка в файл. Вы можете сократить /history как /h.
/вставка Указывает, что в старый текст вставляется новый текст.
/overstrike Указывает, что новый текст перезаписывает старый текст.
/exename=<exename> Указывает программу (то есть исполняемый файл), в которой выполняется макрос doskey.
/macrofile=<filename> Указывает файл, содержащий макросы, которые требуется установить.
<macroname>=[<text>] Создает макрос, который выполняет команды, указанные text. macroName указывает имя, которое необходимо назначить макросу. Текстовый указывает команды, которые требуется записать. Если текстовый остается пустым, имя макроназначения удаляется из всех назначенных команд.
/? Отображает справку в командной строке.

Замечания

  • Некоторые символьные, интерактивные программы, такие как отладчики программ или программы передачи файлов (FTP), автоматически используют Doskey.exe. Чтобы использовать Doskey.exe, программа должна быть консольным процессом и использовать буферные входные данные. Назначения ключей программы переопределяют doskey назначения ключей. Например, если программа использует ключ F7 для функции, в всплывающем окне невозможно получить журнал команд doskey doskey.

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

  • С помощью Doskey.exeможно поддерживать журнал команд для каждой программы, которую вы запускаете или повторяете. Вы можете изменить предыдущие команды в командной строке программы и запустить doskey макросы, созданные для программы. Если вы завершите работу, а затем перезапустите программу из того же окна командной строки, будет доступна история команд из предыдущего сеанса программы.

  • Чтобы вспомнить команду, можно использовать любой из следующих ключей после запуска Doskey.exe:

    Ключ Описание
    СТРЕЛКА ВВЕРХ Вспоминает команду, используемую перед отображаемой командой.
    СТРЕЛКА ВНИЗ Вспоминает команду, используемую после отображаемого.
    СТРАНИЦА ВВЕРХ Вспоминает первую команду, используемую в текущем сеансе.
    СТРАНИЦА ВНИЗ Вспоминает последнюю команду, используемую в текущем сеансе.
  • В следующей таблице перечислены doskey клавиши редактирования и их функции:

    Клавиша или сочетание клавиш Описание
    СТРЕЛКА ВЛЕВО Перемещает точку вставки назад один символ.
    СТРЕЛКА ВПРАВО Перемещает точку вставки вперед один символ.
    CTRL+СТРЕЛКА ВЛЕВО Перемещает точку вставки обратно в одно слово.
    CTRL+СТРЕЛКА ВПРАВО Перемещает точку вставки вперед по одному слову.
    ДОМ Перемещает точку вставки в начало строки.
    КОНЕЦ Перемещает точку вставки в конец строки.
    ESC Очищает команду из отображения.
    F1 Копирует один символ из столбца в шаблоне в тот же столбец в окне командной строки. (Шаблон — это буфер памяти, содержащий последнюю команду, которую вы ввели.)
    F2 Выполняет поиск вперед в шаблоне для следующего ключа, который вы вводите после нажатия клавиши F2. Doskey.exe вставляет текст из шаблона, но не включает указанный символ.
    F3 Копирует оставшуюся часть шаблона в командную строку. Doskey.exe начинает копирование символов из позиции в шаблоне, соответствующей позиции, указанной точкой вставки в командной строке.
    F4 Удаляет все символы из текущей позиции точки вставки до, но не в том числе, следующее вхождение символа, введенного после нажатия клавиши F4.
    F5 Копирует шаблон в текущую командную строку.
    F6 Помещает символ конца файла (CTRL+Z) в текущее положение точки вставки.
    F7 Отображает (в диалоговом окне) все команды этой программы, хранящиеся в памяти. Используйте клавишу СТРЕЛКА ВВЕРХ и СТРЕЛКА ВНИЗ, чтобы выбрать нужную команду и нажать клавишу ВВОД, чтобы выполнить команду. Вы также можете заметить последовательное число перед командой и использовать это число вместе с ключом F9.
    ALT + F7 Удаляет все команды, хранящиеся в памяти для текущего буфера журнала.
    F8 Отображает все команды в буфере журнала, начинающиеся с символов в текущей команде.
    F9 Запрашивает номер команды буфера журнала, а затем отображает команду, связанную с указанным номером. Нажмите клавишу ВВОД, чтобы выполнить команду. Чтобы отобразить все числа и связанные с ними команды, нажмите клавишу F7.
    ALT+F10 Удаляет все определения макросов.
  • При нажатии клавиши INSERT можно ввести текст в командной строке doskey в разгар существующего текста, не заменив текст. Однако после нажатия клавиши ВВОД Doskey.exe возвращает клавиатуру, чтобы заменить режим. Чтобы вернуться к режиму вставки , необходимо еще раз нажать клавишу INSERT.

  • Точка вставки изменяет фигуру при использовании клавиши INSERT для изменения одного режима на другой.

  • Если вы хотите настроить работу Doskey.exe с программой и создать макросы doskey doskey для этой программы, можно создать пакетную программу, которая изменяет Doskey.exe и запускает программу.

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

    Персонаж Описание
    $G или $g Перенаправляет выходные данные. Используйте один из этих специальных символов для отправки выходных данных на устройство или файл вместо экрана. Этот символ эквивалентен символу перенаправления для выходных данных (>).
    $G$G или $g$g Добавляет выходные данные в конец файла. Используйте один из этих двойных символов, чтобы добавить выходные данные в существующий файл вместо замены данных в файле. Эти двойные символы эквивалентны символу перенаправления добавления для выходных данных (>>).
    $L или $l Перенаправляет входные данные. Используйте один из этих специальных символов для чтения входных данных с устройства или файла вместо клавиатуры. Этот символ эквивалентен символу перенаправления для входных данных (<).
    $B или $b Отправляет выходные данные макроса в команду. Эти специальные символы эквивалентны использованию канала ( и *.
    $T или $t Отделяет команды. Используйте один из этих специальных символов для разделения команд при создании макросов или команд типа в командной строке doskey. Эти специальные символы эквивалентны использованию амперсанда (&) в командной строке.
    $$ Задает знак доллара ($).
    $1 $9 Представляет все сведения командной строки, которые необходимо указать при запуске макроса. Специальные символы $1 через $9 — это пакетные параметры, которые позволяют использовать различные данные в командной строке при каждом запуске макроса. Символ $1 в команде doskey аналогичен символу %1 в пакетной программе.
    $* Представляет все сведения командной строки, которые необходимо указать при вводе имени макроса. Специальный символ $* — это заменяемый параметр, аналогичный параметрам пакетной службы $1 через $9, с одной важной разницей: все, что вы вводите в командной строке после замены имени макроса $* в макросе.
  • Чтобы запустить макрос, введите имя макроса в командной строке, начиная с первой позиции. Если макрос был определен с $* или любым из параметров пакетной службы $1 через $9, используйте пробел для разделения параметров. Невозможно запустить макрос doskey doskey из пакетной программы.

  • Если вы всегда используете определенную команду с определенными параметрами командной строки, можно создать макрос с тем же именем, что и команда. Чтобы указать, нужно ли запускать макрос или команду, выполните следующие рекомендации:

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

    • Чтобы выполнить команду, вставьте одно или несколько пробелов в командной строке и введите имя команды.

Примеры

Параметры командной строки /macros и /history командной строки полезны для создания пакетных программ для сохранения макросов и команд. Например, чтобы сохранить все текущие макросы doskey doskey, введите следующее:

doskey /macros > macinit

Чтобы использовать макросы, хранящиеся в Macinit, введите:

doskey /macrofile=macinit

Чтобы создать пакетную программу с именем Tmp.bat, которая содержит недавно использованные команды, введите:

doskey /history> tmp.bat

Чтобы определить макрос с несколькими командами, используйте $t для разделения команд следующим образом:

doskey tx=cd temp$tdir/w $*

В предыдущем примере макрос TX изменяет текущий каталог на Temp, а затем отображает список каталогов в широком формате отображения. Вы можете использовать $* в конце макроса, чтобы добавить другие параметры командной строки для dir при запуске параметра tx.

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

doskey mc=md $1$tcd $1

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

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

mc books

Чтобы создать макрос doskey doskey для программы с именем Ftp.exe, включите /exename следующим образом:

doskey /exename=ftp.exe go=open 172.27.1.100$tmget *.TXT c:\reports$tbye

Чтобы использовать предыдущий макрос, запустите FTP. В командной строке FTP введите следующее:

go

FTP запускает открытые, mgetи команды .

Чтобы создать макрос, который быстро и безоговорочно форматирует диск, введите следующее:

doskey qf=format $1 /q /u

Чтобы быстро и безоговорочно отформатировать диск на диске A, введите следующее:

qf a:

Чтобы удалить макрос с именем vlist, введите следующее:

doskey vlist =