Doskey

Вызов программы Doskey.exe, которая позволяет повторно вызывать команды Windows XP, редактировать командные строки и создавать макросы.

Синтаксис

doskey {/reinstall |  /listsize=размер |   /macros:[{all | программа}] |  /history |   /insert | /overstrike |  /exename=программа |   /macrofile=имя_файла |  имя_макроса=[текст]}

Параметры

/reinstall
Установка новой копии программы Doskey.exe. Очистка буфера команд.
/listsize=размер
Задание максимального количества команд, сохраняемых в буфере.
/macros
Вывод списка всех макросов, заданных командой doskey. Для перенаправления списка в файл можно использовать символ перенаправления (>) вместе с параметром /macros. Допускается использование сокращения /m вместо /macros.
all
Вывод макросов doskey для всех программ.
программа
Вывод макросов doskey для заданной программы.
/history
Вывод всех команд, сохраняемых в памяти. Для перенаправления списка в файл можно использовать символ перенаправления (>) вместе с параметром /history. Допускается использование сокращения /h вместо /history.
{/insert | /overstrike}
Задание режима замены текста при вводе. Если используется параметр /insert, вводимый текст будет вставляться в старый (как при нажатии клавиши INSERT). При задании параметра /overstrike новый текст будет вводиться взамен старого. По умолчанию используется /overstrike.
/exename=программа
Задание программы (т. е. исполняемого файла), в которой выполняется макрос doskey.
/macrofile=имя_файла
Задание имени файла, содержащего макросы, которые требуется установить.
имя_макроса=[текст]
Создание макроса, который выполняет команды, заданные параметром текст. Параметр имя_макроса задает имя, которое присваивается данному макросу. Текст задает команды, которые записываются в макрос. Если параметр текст оставлен пустым, макрос имя_макроса не будет выполнять никаких команд.
/?
Отображение справки в командной строке.

Примечания

  • Использование Doskey.exe

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

  • Повторный вызов команд

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

    Клавиша Описание
    СТРЕЛКА ВВЕРХ Перемещение на одну команду назад в буфере команд.
    DOWN ARROW Перемещение на одну команду вперед в буфере команд.
    PAGE UP Перемещение в начало буфера команд.
    PAGE DOWN Перемещение в конец буфера команд.
  • Редактирование командных строк

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

    В следующей таблице перечислены команды редактирования doskey.

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

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

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

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

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

  • Задание режима вставки по умолчанию

    Если нажата клавиша INSERT, текст можно вводить прямо в середину командной строки doskey без удаления предыдущего текста. Однако после нажатия клавиши ENTER режим замены восстанавливается. Для возвращения в режим вставки необходимо снова нажать INSERT.

    Для переключения клавиатуры в режим вставки при нажатии клавиши ENTER используйте параметр /insert. Этот режим сохраняется до тех пор, пока не будет задан параметр /overstrike. Нажатие клавиши INSERT временно восстанавливает режим замены, но при нажатии клавиши ENTER в программе Doskey.exe устанавливается режим вставки.

    Форма курсора изменяется при нажатии клавиши INSERT для смены режимов.

  • Создание макросов

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

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

    Для вызова макроса необходимо ввести его имя, начиная с первой позиции командной строки. Если в макросе используется параметр $* или какой-либо из параметров $1 $9, вводите пробелы для разделения параметров. Вызов макросов doskey невозможен из пакетных программ.

  • Создание макросов с именами, совпадающими с именами команд Windows XP

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

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

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

    doskey имя_макроса=

Примеры

Параметры /macros и /history полезны при создании пакетных программ для сохранения макросов и команд. Например, для сохранения всех текущих макросов 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

Макрос создает каталог, а затем делает его текущим.

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

mc books

Чтобы создать макрос doskey для программы Ftp.exe, задайте параметр /exename:

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

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

go

Программа ftp последовательно выполнит команды open, mget и bye.

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

doskey qf=format $1 /q /u

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

qf a:



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



Новый раздел о средствах командной строки в рамках этого же проекта расположен здесь





HTML и CSS
корректный
my counter

Фитотерапия Молитвы Водолечение Юмор Форум Кладовка link О авторе Фитотерапия Молитвы Водолечение Юмор Форум Кладовка Ссылки О авторе Отправить сообщение Карта сайта Поиск по сайту Главная страница