Ответы:
Это очень хороший вопрос. Я нашел это . Я полагаю, вы могли бы сделать сценарий 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
. Так работает :)
doskey∙♦=exit
(где ♦
есть [char]4
). Позволяет закрыть оболочку с помощью Ctrl + D, Enter.
AUTORUN=%USERPROFILE%\autorun.cmd
так, чтобы он использовал один для текущего пользователя ... крутой трюк, хотя, попробую его, когда вернусь домой ... Я в основном использую bash в последнее время, но это поможет.
Модификация ответа mc3b для тех, кто любит Windows.
Создайте файл внутри 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 сделает это проще .
choco install devbox-common -y
.bashrc.bat
и .bashrc.include.aliases-common.bat
на вашем пути домой. Каждое сопоставление файла .bashrc.include.*.bat
будет выполняться при каждом запуске командной оболочки.Для всех людей, пришедших из мира, подобного Unix, и приземляющихся на этот вопрос (т.е. всех, так как он об этом спрашивает .bashrc
): радикально улучшите свою консольную жизнь Windows и прекратите использовать cmd.exe
стандартный и Windows-терминал по умолчанию !! Никто из тех, кто задает этот вопрос или ищет ответы на этот вопрос, не должен использовать текущее значение по умолчанию cmd.exe
и терминал!
Если вы хотите выключить товар cmd.exe
(я не знаю веских причин не делать этого), один простой ответ на оригинальный вопрос:
Установите и используйте Cmder, и ваш .bashrc
аналог станет
%CMDER_ROOT%\config\user_profile.cmd
, в то же время, значительно улучшая ваши возможности оболочки / консоли
Мнения, расширения и слабо связанные рекомендации следуют ...
Cmder - это метапакет, в который входят ConEmu , Clink , а также куча дополнительных настроек и прочего. ConEmu - это эмулятор терминала, который предоставляет возможность запуска сценария запуска, который (через стандартные настройки ConEmu, предоставляемые Cmder ) завершает маршрутизацию к указанному %CMDER_ROOT%\config\user_profile.cmd
.
Возможно, вы захотите просто явно использовать ConEmu и Clink независимо, а не использовать пакет Cmder.
Чтобы сделать это, и добавить еще «надо работать над окнами, что я должен делать», блаженство, ниже приведены некоторые хорошие / самоуверенные вещи, которые нужно сделать. Они, по общему признанию, ОЧЕНЬ слабо связаны с первоначальным вопросом, но недавно я снова прошел настройку Windows, уже набрал большую часть этого, и целевая аудитория в этом вопросе верна, так что вы идете ...
extras
ведро для многих неконсольных вещей ( scoop bucket add extras
)cmd.exe
scoop install clink
clink autorun install
заставить его работать, когда cmd.exe
запускаетсяscoop install conemu
Settings::Integration->Default term
scoop install gow
grep
, vim
, sed
, ls
, cat
, curl
, wc
, less
, find
и т.д., и т.д.) вы знаете и любите, прямо в cmd.exe
-like терминале без неродного странностиfind->gfind
иawk->gawk
scoop search
и, scoop info
чтобы найти те, которые вы хотите, или просмотрите группы (есть несколько групп , не только основные и дополнительные)