Aliasy poleceń konsoli 2

8

Korzystam z konsoli 2 i chciałbym utworzyć aliasy dla często używanych poleceń. Może moje google-fu dzisiaj jest do bani, ale nie mogę wymyślić, jak to zrobić. Każda pomoc będzie mile widziana dzięki.

StevenMcD
źródło
zmień powłokę w konsoli 2 na PowerShell. Jest znacznie potężniejszy niż powłoka cmd.
Dzung Nguyen,

Odpowiedzi:

7

Console2 to tylko opakowanie wokół ukrytych okien konsoli Win32 i nie zapewnia rozszerzonej edycji linii.

Możesz tworzyć aliasy w konsolach Win32:

doskey d=dir $*

W przeciwieństwie do Uniksa sh, musisz jawnie określić, $*aby dołączyć podane argumenty (np. d C:\). Możesz także użyć $Tdo oddzielenia poleceń.

Również w przeciwieństwie do Uniksa aliasy są implementowane na poziomie konsoli Win32 , a nie w Console2 ani w powłoce cmd.exe. Oznacza to również, że możesz ich używać w dowolnym programie, który czyta interaktywne dane wejściowe. (Na przykład, doskey /exename=python.exe h=help($*)przełoży h syssię help(sys)).


Aby automatycznie załadować aliasy dla cmd.exe (Wiersz polecenia):

  1. utwórz skrypt wsadowy (na przykład %APPDATA%\autorun.cmd) za pomocą doskeypoleceń. Przykład:

    @doskey d=dir $*
    

    Przykład odczytu wielu aliasów z pliku:

    @doskey /macrofile=%APPDATA%\cmd.aliases
    
  2. ustaw HKCU\SOFTWARE\Microsoft\Command Processorwartość AutoRunna ścieżkę skryptu „autorun”:

    C:\> reg add "HKCU\SOFTWARE\Microsoft\Command Processor" /v AutoRun /t REG_SZ /d "%APPDATA%\autorun.cmd"
    
użytkownik1686
źródło
12

Chociaż pytanie to ma ponad rok i zostało już udzielone odpowiedzi, poniższe rozwiązanie jest prostsze i pozwala uniknąć edycji rejestru:

W Console2 przejdź do Edycja> Ustawienia. Zmień pole „Shell:” na następujące:

C:\Windows\system32\cmd.exe /K "C:\Path\to\aliases.cmd"

Teraz uruchom ponownie konsolę 2 i gotowe.

Aby zaoszczędzić trochę czasu, oto prosty przykład pliku aliases.cmd:

@echo off

DOSKEY clear=cls
DOSKEY ls=dir
DOSKEY ex=explorer .
DOSKEY ll=dir /A
DOSKEY rm=del $*
Alex Krycek
źródło