回答:
Console2は非表示のWin32コンソールウィンドウのラッパーにすぎず、拡張行編集機能は提供していません。
Win32コンソールでエイリアスを作成できます。
doskey d=dir $*
Unixとは異なりsh
、$*
特定の引数を追加することを明示的に指定する必要があります(例d C:\
)。$T
コマンドを区切るためにも使用できます。
また、Unixとは異なり、エイリアスはWin32コンソールレベルで実装されており、Console2やcmd.exeシェルでは実装されていません。これは、対話型入力を読み取るすべてのプログラムでそれらを使用できることも意味します。(たとえば、doskey /exename=python.exe h=help($*)
に変換さh sys
れhelp(sys)
ます。)
cmd.exe(コマンドプロンプト)のエイリアスを自動的にロードするには:
コマンドを使用してバッチスクリプト(たとえば、%APPDATA%\autorun.cmd
)を作成しdoskey
ます。例:
@doskey d=dir $*
ファイルから複数のエイリアスを読み取る例:
@doskey /macrofile=%APPDATA%\cmd.aliases
HKCU\SOFTWARE\Microsoft\Command Processor
値AutoRun
を「自動実行」スクリプトのパスに設定します。
C:\> reg add "HKCU\SOFTWARE\Microsoft\Command Processor" /v AutoRun /t REG_SZ /d "%APPDATA%\autorun.cmd"
この質問は1年以上前に既に回答されていますが、次の解決策はより簡単で、レジストリの編集を回避します。
Console2で、[編集]> [設定]に移動します。「Shell:」フィールドを次のように変更します。
C:\Windows\system32\cmd.exe /K "C:\Path\to\aliases.cmd"
これでConsole2を再起動すると完了です。
時間を節約するために、aliases.cmdファイルの簡単な例を次に示します。
@echo off
DOSKEY clear=cls
DOSKEY ls=dir
DOSKEY ex=explorer .
DOSKEY ll=dir /A
DOSKEY rm=del $*