WindowsのコマンドプロンプトはMacやLinuxのターミナルと違って見づらい...
ということで、なるべくカラフルにカスタマイズしてみたいと思います。
追加ソフトを使わずにプロンプトをカラフルにカスタマイズ
promptコマンドについて
プロンプトとはコマンドプロンプト (以下「cmd」)
やターミナルでユーザー名やカレントディレクトリ等が表示される部分を指すようです。
Windowsではprompt
コマンドでプロンプトを変更することができます。promptコマンドの詳細についてはここをご覧ください。
例えば、cmdを開き、下記のコマンドを入力することで、普段の表示の前に現在時刻を追加することができます。
prompt [$t] $p$g
promptコマンドでは特殊文字$e
によりANSIエスケープコードが使用できるので、promptの特殊文字では実現できないさまざまな制御を行うことができます。
私の場合、最終的に環境変数とエスケープコードを使用した以下のプロンプトに変更しました。
prompt $e[01;32m%username%@%computername%$e[0m:$e[01;34m$p$e[0m$g$s
$e[01;32m
で色を緑に変更し、%username%
でユーザー名を表示、@を挟み、%computername%
でコンピュータ名を表示し、$e[0m
で色を元に戻しています。
CMD起動時にコマンドを自動実行する
ここまでで、プロンプトを変更することは出来たものの、このままではcmdを起動するたびに毎回コマンドを実行しなくてはいけません。
そこでbatchファイルにコマンドを記載し、それをレジストリに登録して毎回実行されるようにします。
Batchファイルをレジストリに登録
通常通りテキストファイルをcmdrcという名前で作成し(この名前は何でもいいです)、下記の内容を入力します。prompt=の後にはお好みのプロンプトを入力してください
@echo off
set prompt=$e[01;32m%username%@%computername%$e[0m:$e[01;34m$p$e[0m$g$s
テキストファイルの拡張子を.txtから.batに変更し、適当な位置に移動します。
次に、キーボードのWindows+Rを押してファイル名を指定して実行
を呼び出しregedit
と入力してレジストリエディタを開きます。
レジストリエディタのアドレスバーにHKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor
と入力して移動します。
右クリック → 新規 →文字列値
を選択、名前をAutoRun
に設定します。
作成したAutoRunをダブルクリックし、値のデータ
に先ほど作成したcmdrc.batのフルパスを入力します。フルパスはcmdrc.batをShiftキーを押しながら右クリックして、パスのコピーを選択することでコピーできます。
cmdを再起動してプロンプトが変更されていれば成功です。
Clinkを使用してカスタマイズする
Clinkを使用すると、タブ補完などの様々な機能が使えるようになります。
GitHubからClinkの最新版 clink_{バージョン}_setup.exe
をダウンロードし、指示に従ってインストールします。これだけでMacやLinuxのようにタブ補完ができるようになります。
また、Clinkのインストールフォルダ (おそらく{ドライブ名}:\Program Files (x86)\clink\{バージョン}) にあるclink.batにpromptを記載してもCMD起動時にコマンドを実行することができます。