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 Добавление вывода в конец файла. Обе эти двухсимвольные комбинации добавляют вывод к существующему файлу, а не заменяют данные в нем. Эти комбинации эквивалентны символу перенаправления вывода с добавлением (>>).
    $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 0tcd $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:

 
Доставка в
 
Тернопіль тернополь бровары черкассах котовск глухов токмак запорожье крым бердичев винница боярка Бабанка Байбузы Балаклея Белозорье Будище Бужанка Бузуков Валява Васильков Ватутино Вербовец Вергуны Верхнячка Вильховец Вознесенское Гельмязов Геронимовка Городище Дзензеловка Драбов Дубиевка Ерки Жашков Звенигородка Золотоноша Иваньки Ирдынь Ирклиев Каменка Канев -- Александровка Бабинцы Багрин Барышевка Безпятное Белая Церковь Белогородка Березань Беспечная Блиставица Богдановка Богуслав Борисполь Боровая Бородянка Бортничи Боярка Бровары Бузовая Буча Васильков Вишневое Володарка Ворзель Вороньков Вышгород Гатное Глеваха Гнидын Гоголев Гореничи Горенка Гостомель Гребенки Григорьевка Гуровщина Дениховка Диброва Дмитровка Довгалевское Дослидницкое Дымер Жовтневое Зазимье Згуровка Иванков Ирпень Йосиповка Кагарлык Калиновка Капитановка Кашперовка Княжичи Кодра Козин Коцюбинское Красиловка Красное Крюковщина Ксаверовка Летки Липовка Лука Лукьяновка Макаров Мархаловка Мироновка Мотыжин Музычи Немешаево Новоселки Новые безрадичи Новые петровцы Обухов Озирне Паляничинцы Переяслав-Хмельницкий Песковка Петровское Петропавловская Борщаговка Пилиповка Пилипча Плесецкое Подгорцы Полесское Процев Пустоваровка Пуховка Ракитное Ржищев Рогозов Рожны Росава Рославичи Саливонки Самгородок Сеньковка Ситняки Сквира Софиевская Борщаговка Стайки Тарасовка Тараща Терезино Тетиев Требухов Узин Украинка Устимовка Фастов Фесюри Фурсы Ходосовка Хотов Чабаны Червоная слобода Чернобыль Черногородка Чубинское Шамраевка Шибене Шкаровка Щасливое Юрковка Юровка Яготин Ясногородка Киев

Статистика  
 

Онлайн всего: 1
Гостей: 1
Пользователей: 0