Создать файл определения макроса например, в notepad
; назовите его по своему желанию и сохраните в любом месте (например, в следующем примере я использовал имя файла macros.doskey
в d:\bat\
папка).
С другой стороны, doskey /macros>d:\bat\macros.doskey
команда будет список все текущие определения макросов в d:\bat\macros.doskey
файл.
Пример файла определения макроса может быть следующим (обратите внимание, что ==>
моя командная строка указана prompt $Q$Q$G$S
команда ):
==> type d:\bat\macros.doskey
ls=dir /B $1
ip=ipconfig $*
Затем следующие команды должны выполнить работу:
==> reg add "HKCU\Software\Microsoft\Command Processor" /v Autorun /d "doskey /macrofile=\"d:\bat\macros.doskey\"" /f
The operation completed successfully.
==> reg query "HKCU\Software\Microsoft\Command Processor" /v Autorun
HKEY_CURRENT_USER\Software\Microsoft\Command Processor
Autorun REG_SZ doskey /macrofile="d:\bat\macros.doskey"
Для объяснения прочитайте cmd /?
:
Если /D
НЕ был указан в командной строке, то когда CMD.EXE
начинается, это выглядит следующим REG_SZ
/ REG_EXPAND_SZ
реестр
переменные, и если присутствует один или оба, они выполняются первыми.
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
и / или
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
отказ : немного AutoRun
настройки могут привести к непредвиденному нежелательному поведению, например, как описано в Скрытая ошибка: настройка автозапуска командного процессора
Читать Сохранить и восстановить определения макросов ; Вы могли бы подготовить действительный macros.cmd
файл сценария за один шаг:
==> >macros.cmd (@for /F "delims=" %G in ('doskey /macros') do @echo DOSKEY %G)
==> type macros.cmd
DOSKEY ip=ipconfig $*
DOSKEY ls=dir /B $1
==>
Пожалуйста, имейте в виду, что вы не можете запустить макрос Doskey из командного файла ,