Я ищу способ автоматического выполнения некоторых консольных команд при открытии командной строки в Windows, в частности, для установки псевдонимов некоторых команд.
Например, когда открыта командная строка, я хочу, чтобы автоматически выполнялась команда, подобная следующей, чтобы я мог использовать ls
вместо dir
.
doskey ls=dir
Как это может быть сделано?
windows
command-line
console
autorun
Дэниел Уильямс
источник
источник
cmd.exe
.Ответы:
Если вы хотите, чтобы он загружался при загрузке, а не при входе в систему, если у вас есть XP Pro (XP home не включает gpedit.msc), сделайте следующее:
и нажмите ввод. Затем запустите gpupdate / force из командной строки.
Перейти к
и добавьте местоположение к сценарию.
Вы также можете сделать это для входа пользователя в систему
Если у вас есть XP Home, вы можете скопировать сценарии в:
для загрузки их при загрузке, или:
для загрузки их для пользователя при входе в систему. Папка GroupPolicy скрыта.
источник
Псевдонимы команд относятся к окну консоли, в котором вы их настраиваете, поэтому сценарий запуска не будет работать. Вы можете сделать это следующим образом:
Создайте командный файл (
.cmd
) с вашими командами doskey , поместите его где-нибудь в Application Data.Настройте его на автоматический запуск при каждом открытии cmd . Настройка в реестре:
HKCU\SOFTWARE\Microsoft\Command Processor
AutoRun
"%AppData%\aliases.cmd"
источник
if exist "%AppData%\aliases.cmd" "%AppData%\aliases.cmd"
Различные интерпретаторы команд обрабатывают псевдонимы команд по-разному.
CMD от Microsoft опирается на консольную подсистему Win32 для обеспечения механизма псевдонимов команд. Команда
doskey
фактически взаимодействует с консолью процесса, и сама консоль содержит псевдонимы. Таким образом, псевдонимы являются консольными и временными.TCC / LE от JP Software обрабатывает псевдонимы самостоятельно.
alias
Команда позволяет просматривать и манипулировать псевдонимы, которые являются либо «локальными» или «глобальными». Псевдонимы все еще являются временными, но являются частными для одного процесса интерпретатора команд или совместно используются всеми процессами интерпретатора команд (на всех консолях).Такие оболочки, как оболочка Korn в служебном инструментарии SFUA, чьи инструменты работают в Подсистеме для приложений на базе UNIX, которая поставляется в комплекте с Windows 7 Ultimate Edition и Windows Server 2008 R2 (для Windows XP можно загрузить и установить Службы для UNIX версии 3.5 .) - и оболочка Bourne Again от cygwin аналогичным образом обрабатывает сами псевдонимы. Псевдонимы являются временными, и для процесса интерпретатора команды.
Автоматическая загрузка начального набора псевдонимов по умолчанию также зависит от интерпретатора команд.
Во всех случаях можно поместить команды для установки псевдонимов в каком-либо сценарии.
grawity
уже дал один из двух ключей реестра, которые заставляют CMD Microsoft запускать команду при запуске . К сожалению, это процесс интерпретатора команд, хотя сами псевдонимы хранятся на консоли . Запустите дополнительный командный интерпретатор из исходного, и любые ручные изменения псевдонимов по умолчанию будут сброшены. Альтернатива, которая, по крайней мере, выполняет инициализацию только один раз для каждой консоли, заключается в добавлении/K
опции и имени командного сценария, который вызываетdoskey
командный хвост, в ярлык, запускающий интерпретатор команд.TCC / LE от JP Software автоматически запускает
TCSTART
скрипт при запуске. Опять же, это процесс интерпретации команд. Однако «локальные» псевдонимы TCC также используются для каждого процесса интерпретатора команд, поэтому это подходящее место для инициализации псевдонимов, если используются локальные псевдонимы. Для глобальных псевдонимов, просто создать ярлык вStartup
папке , которая загружает псевдонимы из файла (сalias /r
) , а затем запускают вshralias
команду так , что они сохраняются после того, что ярлык завершения работы.Для оболочек Bourne Again и Korn просто делайте то же самое, что и эти оболочки на любой другой платформе. Используйте
alias
команду в$HOME/.profile
и$HOME/.bashrc
сценарии для оболочки Bourne Again; и используйтеalias
команду в$HOME/.profile
, ENV и$HOME/.kshrc
сценарии для оболочки Korn.источник
Ответ Гравити отлично сработал для меня.
Я создал скрипт shell-aliases.cmd в своей папке «Документы» (где-нибудь, где я могу найти его позже).
Затем создал расширяемое строковое значение AutoRun в разделе реестра:
'HKEY_CURRENT_USER \ Программное обеспечение \ Microsoft \ Командный процессор'
Задайте значение для полного пути к файлу псевдонимов (мой был в 'C: \ Users \ Lee \ Documents \ shell-aliases.cmd').
Как только я перезагрузил командную строку, мои псевдонимы работали. Кроме того, мой файл псевдонимов легко доступен и готов к редактированию, так как я думаю добавить еще.
источник
Есть несколько мест, которые можно использовать, но меню «Пуск»> «Папка запуска», вероятно, является самым простым.
Запустите msconfig и посмотрите, какие программы запускаются и почему. Вы можете просто добавить свою программу в один из этих списков (например, в реестре).
источник
Проблема здесь в том, что если вы делаете это при запуске, эти замены будут доступны только в открывшемся приглашении CMD. Если он закрывается, все эти замены будут потеряны и должны быть выполнены снова для каждой открытой командной строки.
Итак, несколько альтернативных способов (их можно комбинировать):
I. Создайте пакет и ярлык:
II. Создайте пакет и запись в переменной окружения PATH:
источник