【CMD】環境変数PROMPTについて -入力待機表示の変更-

コマンドプロンプト

コマンドプロンプトの C:\Users\xxx> のような入力待機表示を変更することができます。

デフォルトのPROMPT

コマンドプロンプトを開くと、入力待機中の表示はデフォルトでは カレントディレクトリの絶対パス> となっています。

C:\Users\xxx>

環境変数 PROMPT

環境変数 PROMPT を変更することで、この表示を変えることができます。PROMPT には、任意の文字列に加え、$ で始まる特殊コードを使用することができます。(環境変数とは

# デフォルトは「$P$G」
#「$P」現在のパス(Path)
#「$G」大なり記号(Greater than)
C:\Users\xxx\Documents>set PROMPT
PROMPT=$P$G

# 環境変数 PROMPT を「cmd$G」に変更
C:\Users\xxx\Documents>set PROMPT=cmd$G

# 表示が「C:\Users\xxx\Documents>」から「cmd$G」に変更される
cmd>

文字列と特殊コード以外に、環境変数も %変数名% の形式で使用することができます。

# 環境変数 COMPUTERNAME を使用する場合
cmd>set COMPUTERNAME
COMPUTERNAME=TEST-PC

# 変数の値を参照する場合は %変数名% とする
cmd>set PROMPT=%COMPUTERNAME%$G

# 環境変数 COMPUTERNAME を使用したプロンプト表示に切り替わる
TEST-PC>

そもそも「環境変数とは何か」ということや、「環境変数の確認・設定の方法」については以下に詳細を記載しています。

コマンド PROMPT

PROMPT は環境変数とは別にコマンドとしても用意されており、/? オプションを指定することで、使用可能な特殊コードを確認することができます。

TEST-PC>PROMPT /?
cmd.exe のコマンド プロンプトを変更します。

PROMPT [文字列]

  文字列    新しいコマンド プロンプトを指定します。

PROMPT には通常の文字と次に示す特殊コードを使用できます:

  $A   & (アンパサンド)
  $B   | (パイプ)
  $C   ( (左かっこ)
  $D   現在の日付
  $E   エスケープ コード (ASCII コードの 27)
  $F   ) (右かっこ)
  $G   > (不等号 (より大))
  $H   バックスペース (直前の文字を削除します)
  $L   < (不等号 (より小))
  $N   現在のドライブ
  $P   現在のドライブとパス
  $Q   = (等号)
  $S     (空白)
  $T   現在の時刻
  $V   Windows のバージョン番号
  $_   キャリッジ リターンとラインフィード
  $$   $ (ドル記号)

コマンド拡張機能を有効にすると、PROMPT コマンドは、次の追加の書式
文字をサポートするようになります:

  $+   PUSHD ディレクトリ スタックの深さに応じて、0 個以上のプラス
       記号 (+) を指定します。1 個のプラス記号が、プッシュされた
       1 レベルを表します。

  $M   現在のドライブ文字に関連付けられているリモート名を表示します。
       現在のドライブがネットワーク ドライブでない場合は、空の文字列
       を表示します。

PROMPT [文字列] とあるように、set PROMPT=[文字列] でなくコマンド使用によって表示を変更することも可能です。

# PROMPT コマンドで変更することも可能
TEST-PC>PROMPT [%USERNAME%@%COMPUTERNAME%]$$$S

# 環境変数 PROMPT も 変更されていることが確認できる
[test-user@TEST-PC]$ set PROMPT
PROMPT=[test-user@TEST-PC]$$$S

[test-user@TEST-PC]$

PROMPTの変更方法

デフォルトではカレントディレクトリの絶対パスを表示するため、パスが長くなると見にくいことがあります。変更しておくことでワークスペースが深いディレクトリの場合に便利です。

プロンプトの変更
set PROMPT=[文字列] または PROMPT [文字列]

特殊コードの確認
PROMPT /?

タイトルとURLをコピーしました