Только что обнаружил doskey emacs = emacs -nw $ *, но без чего-то вроде .bashrc мне придется вводить это каждый раз, когда я запускаю оболочку, верно?
6 ответов
Это очень хороший вопрос. Я нашел это. Я полагаю, вы могли бы сделать сценарий cmd и запустить его при запуске cmd:-?
; Run a command when CMD.exe starts
[HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor]
"AutoRun"=-
РЕДАКТИРОВАТЬ: Я только что попробовал это. У меня есть AutoRun=C:\mini\bashrc.cmd
и bashrc.cmd
@echo off
set TEST_VAR=something
когда я запускаю cmd и ввожу echo %TEST_VAR%
это что- something
говорит. Так работает :)
Вы можете создать ярлык для cmd.exe
и добавить ключ /k
для запуска определенного файла .bat при запуске, что-то вроде этого:
cmd.exe /k "%HOMEDRIVE%\%HOMEPATH%\cmd-startup.bat"
cmd-startup.bat
в вашем домашнем каталоге будет работать так же, как .bashrc
Модификация ответа mc3b для тех, кто такие как Windows Noobs.
Создайте файл в C:\bashrc.cmd
или там, где вы хотите, чтобы ваш файл "rc" находился .
@echo off
set TEST_VAR=something
Запустите regedit
, выполнив поиск или запустив его в cmd.
В папках слева перейдите к:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor
Щелкните правой кнопкой мыши папку Command Processor
и выберите New -> String Value
. Введите ключ AutoRun
. Дважды щелкните AutoRun
и введите местоположение bashrc C:\bashrc.cmd
.
Тест: откройте новое окно cmd и введите:
echo %TEST_VAR%
если это что- something
говорит, это работает.
Предполагая, что ваша оболочка - Powershell, а не cmd, вы можете создать профиль для вашей оболочки. Такие профили в основном представляют собой сценарии, которые выполняются при запуске оболочки. Прямо как .bashrc
. Важной частью этого поста может быть следующее:
Расположение (в Windows Vista) профилей для хоста powershell.exe является следующим:
%windir%\system32\WindowsPowerShell\v1.0\profile.ps1
Это для всех пользователей компьютера и для всех оболочек.%windir%\system32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
Это для всех пользователей компьютера, но только для оболочки Microsoft.PowerShell.%UserProfile%\Documents\WindowsPowerShell\profile.ps1
Это только для текущего пользователя и всех оболочек.%UserProfile%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Это только для текущего пользователя и только для оболочки Microsoft.PowerShell.Эти профили не создаются по умолчанию. Они существуют, только если вы их создадите.
Похоже, то же самое на Windows 7, 8 и 10. Вы также можете найти больше информации здесь.
Примечание. Возможно, вам потребуется выполнить следующее. В противном случае ваш профиль не может быть выполнен.
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Вы также можете запустить следующее как администратор, чтобы изменить конфигурацию для всех пользователей.
Set-ExecutionPolicy RemoteSigned
РЕДАКТИРОВАТЬ: Найдено это: http://msdn.microsoft.com/en-us/library/bb613488(VS.85).aspx
Чтобы изложить решение Мартина (ярлык), вот эквивалент PowerShell.
ПРИМЕЧАНИЕ . Вам необходимо включить выполнение сценариев PowerShell. Если это отключено, вам нужно запустить PowerShell с повышенными правами и выполнить Set-ExecutionPolicy Unrestricted
. Очевидно, что это не рекомендуется по соображениям безопасности, но вы идете.
powershell.exe -noexit -File "%HOMEDRIVE%\%HOMEPATH%\ps-startup.ps1"
В вашем пользовательском каталоге есть файл с именем ps-startup.ps1
и ярлык при запуске будет выполнять его как файл PowerShell. Просто запустите PowerShell с этим ярлыком.
В основном ответ nc3b работает, но пакет DevBox-Common от Chocolatey сделает это проще.
- Если вы еще не установили Chocolatey, установите его.
- Установите пакет DevBox-Common с помощью
choco install devbox-common -y
- Вы должны ввести эту команду внутри административного cmd.exe или PowerShell.
- Теперь у вас есть
.bashrc.bat
и.bashrc.include.aliases-common.bat
в вашем домашнем пути. Каждый файл соответствует.bashrc.include.*.bat
будет выполняться при каждом запуске командной оболочки.