Odpowiedzi:
To jest bardzo dobre pytanie. Znalazłem to . Podejrzewam, że możesz utworzyć skrypt cmd i uruchomić go podczas uruchamiania cmd: -?
; Run a command when CMD.exe starts
[HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor]
"AutoRun"=-
EDYCJA: Właśnie próbowałem. Mam AutoRun=C:\mini\bashrc.cmd
i bashrc.cmd jest
@echo off
set TEST_VAR=something
kiedy uruchamiam cmd i wpisuję echo %TEST_VAR%
, mówi something
. Więc to działa :)
doskey∙♦=exit
(gdzie ♦
jest [char]4
). Umożliwia zamknięcie powłoki za pomocą Ctrl + D, Enter.
AUTORUN=%USERPROFILE%\autorun.cmd
tak, aby używał jednego dla bieżącego użytkownika ... fajna sztuczka, spróbuje go, kiedy wrócę do domu ... Ostatnio używam głównie bash, ale to by pomogło.
Możesz utworzyć skrót do cmd.exe
i dodać /k
przełącznik, aby uruchomić określony plik .bat podczas uruchamiania, coś takiego:
cmd.exe /k "%HOMEDRIVE%\%HOMEPATH%\cmd-startup.bat"
cmd-startup.bat
w twoim domu katalog działałby wtedy tak jak .bashrc
Modyfikacja odpowiedzi MC3B dla tych, którzy są Windows Noobami, jak ja.
Utwórz plik w C:\bashrc.cmd
dowolnym miejscu lub w dowolnym miejscu, w którym ma się znajdować plik „rc”.
@echo off
set TEST_VAR=something
Uruchom regedit
, wyszukując go lub uruchamiając w cmd.
W folderach po lewej stronie przejdź do:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor
Kliknij Command Processor
folder prawym przyciskiem myszy i kliknij New -> String Value
. Wprowadź klucz AutoRun
. Kliknij dwukrotnie AutoRun
i wprowadź lokalizację bashrc C:\bashrc.cmd
.
Test: Otwórz nowe okno cmd i wpisz:
echo %TEST_VAR%
jeśli to mówi something
, to działa.
Zakładając, że twoja powłoka to Powershell, a nie cmd, możesz utworzyć profil dla swojej powłoki. Takie profile to w zasadzie skrypty uruchamiane po uruchomieniu powłoki. Podobnie jak .bashrc
. Ważną częścią tego postu może być:
Lokalizacje (w systemie Windows Vista) profili dla hosta powershell.exe są następujące:
%windir%\system32\WindowsPowerShell\v1.0\profile.ps1
Dotyczy to wszystkich użytkowników komputera i wszystkich powłok.%windir%\system32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
Dotyczy to wszystkich użytkowników komputera, ale dotyczy tylko powłoki Microsoft.PowerShell.%UserProfile%\Documents\WindowsPowerShell\profile.ps1
Dotyczy to tylko bieżącego użytkownika i wszystkich powłok.%UserProfile%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Dotyczy to tylko bieżącego użytkownika i tylko powłoki Microsoft.PowerShell.Te profile nie są tworzone domyślnie. Istnieją tylko wtedy, gdy je utworzysz.
Wygląda tak samo w systemach Windows 7, 8 i 10. Więcej informacji można znaleźć tutaj .
Uwaga: Może być konieczne uruchomienie następujących czynności. W przeciwnym razie Twój profil może nie zostać uruchomiony.
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Możesz również uruchomić następujące czynności jako administrator, aby zmienić konfigurację dla wszystkich użytkowników.
Set-ExecutionPolicy RemoteSigned
EDYCJA : Znaleziono to: http://msdn.microsoft.com/en-us/library/bb613488(VS.85).aspx
Aby objaśnić rozwiązanie Martina (skrót), oto odpowiednik programu PowerShell.
UWAGA : Konieczne będzie włączenie wykonywania skryptu PowerShell. Jeśli ta opcja jest wyłączona, musisz uruchomić podniesioną wersję programu PowerShell i wykonać Set-ExecutionPolicy Unrestricted
. Oczywiście nie jest to zalecane ze względów bezpieczeństwa, ale proszę bardzo.
powershell.exe -noexit -File "%HOMEDRIVE%\%HOMEPATH%\ps-startup.ps1"
Miej plik o nazwie ps-startup.ps1
w katalogu użytkownika, a skrót uruchomi go jako plik PowerShell podczas uruchamiania. Po prostu uruchom PowerShell z tym skrótem odtąd.
Zasadniczo odpowiedź nc3b działa, ale pakiet DevyBox-Common firmy Chocolatey ułatwi to .
choco install devbox-common -y
.bashrc.bat
i .bashrc.include.aliases-common.bat
na swojej domowej ścieżce. Każde dopasowanie pliku .bashrc.include.*.bat
będzie wykonywane przy każdym uruchomieniu powłoki poleceń.Do wszystkich ludzi pochodzących z uniksowego świata i lądujących na tym pytaniu (tj. Wszyscy, ponieważ pytają o to .bashrc
): radykalnie popraw swoje życie konsoli Windows i przestań używać akcji cmd.exe
i domyślnego terminalu Windows !! Nikt, kto zadaje to pytanie ani nie szuka odpowiedzi na to pytanie, nie powinien używać bieżącej wartości domyślnej cmd.exe
i terminala!
Jeśli chcesz wyłączyć zapasy cmd.exe
(nie znam żadnego ważnego powodu, aby tego nie robić), jedną prostą odpowiedzią na pierwotne pytanie jest:
Zainstaluj i używaj Cmdera, a jego .bashrc
odpowiednik stanie się
%CMDER_ROOT%\config\user_profile.cmd
, jednocześnie znacznie poprawiając działanie powłoki / konsoli.
Opinie, rozszerzenia i luźno powiązane rekomendacje następują ...
Cmder to metapakiet, który zawiera ConEmu , Clink oraz stos dodatkowych ustawień i innych rzeczy. ConEmu jest emulatorem terminala, który zapewnia możliwość uruchomienia skryptu, który (poprzez domyślne ustawienia ConEmu, które zapewnia Cmder ) kończy routing do wskazanego %CMDER_ROOT%\config\user_profile.cmd
.
Możesz po prostu jawnie używać ConEmu i Clink niezależnie, zamiast korzystać z dołączonego pakietu Cmder.
Aby to zrobić i dodać jeszcze „muszę pracować w systemie Windows, co powinienem zrobić” błogość, poniżej są pewne dobre / wyrażone opinie rzeczy do zrobienia. Są one wprawdzie BARDZO luźno związane z początkowym pytaniem, ale ostatnio przeszedłem przez konfigurację systemu Windows, już większość z nich napisałem, a grupa docelowa w tym pytaniu jest poprawna, więc proszę ...
extras
wiadro dla wielu rzeczy nie konsolowych ( scoop bucket add extras
)cmd.exe
scoop install clink
clink autorun install
uruchomić go również po cmd.exe
uruchomieniuscoop install conemu
Settings::Integration->Default term
scoop install cmder
), ale osobiście uważam, że łatwiej jest zainstalować / uruchomić Clink i ConEmu osobno.scoop install gow
grep
, vim
, sed
, ls
, cat
, curl
, wc
, less
, find
, etc, etc), które znamy i kochamy, bezpośrednio w cmd.exe
-Jak terminalu bez nienatywnym dziwacznościfind->gfind
iawk->gawk
scoop search
i, scoop info
aby znaleźć te, które chcesz lub przeglądaj wiadra (jest kilka wiader , nie tylko główne i dodatki)