cmd.exe

出典: フリー百科事典『ウィキペディア(Wikipedia)』

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索
cmd.exe
Microsoft Windows コンポーネント
詳細
標準提供 Windows NT 3.1 以降
Windows CE
OS/2
関連コンポーネント
COMMAND.COM
Windows PowerShell

cmd.exe(コマンドプロンプト)はOS/2NT系 WindowsWindows CEに搭載されているコマンドラインインタプリタである。MS-DOSからWindows 9xに渡って用いられたCOMMAND.COM(およびDOSプロンプト)と同様の機能を有している(実際には見た目以外は別物で、いろいろ拡張がされるなどしている)。Win32コンソールを利用して実装されている。

cmd.exeはCOMMAND.COMと比べ、相当に機能向上が図られている。その一方でエスケープシーケンスのように削られた機能もある(エスケープシーケンスは端末ドライバの機能であってシェルの機能ではなく、ANSI.SYS などといった存在もあったが、そういったことは意識されないもののようである)。

新機能[編集]

WindowsにおいてコマンドプロンプトはCOMMAND.COMとある程度の互換性を持つが、次の拡張が施されている。

  • COMMAND.COMでの「コマンドまたはファイル名が違います。」よりも詳細なメッセージを出力するようになった。OS/2ではシステムで選択された言語でエラーが表示され、そのメッセージはシステムメッセージファイルより取得される。
  • 矢印キーを使ったコマンド履歴のスクロールをサポート。この機能はCOMMAND.COMでは外部コマンドのDOSKEYでサポートされていた。
  • ファイルやフォルダーパスのコマンドライン補完をサポート(既定ではTab キーに割り当てられている)
  • 「^」をエスケープ文字として扱う。つまり、次のコマンドプロンプトで特別な意味を持つ文字の前にキャレットを付けることで、リテラルとして扱うことができる。(例:<, >, *, ?, |
  • バッチ処理において変数の遅延展開をサポート(Windows 2000以降)

また、内部コマンドが次のように改善されている。

  • DelTreeコマンド(ディレクトリとそれ以下のファイル・ディレクトリを削除)はRDコマンドに/Sスイッチとして統合。
  • SetLocalコマンドやEndLocalコマンドで環境のスコープを限定。例えば、SetLocalコマンド後にバッチファイルなどにより変更された環境変数は、EndLocalコマンドを実行するとSetLocalコマンド実行前の状態に復元される。
  • Callコマンドでバッチファイル内のサブルーチンの呼び出しをサポートした。COMMAND.COMでは外部バッチファイルの呼び出しのみをサポートしていた。
  • C Shellと互換性があるファイル名修飾子(%fなど)
  • カレントディレクトリを変更した後から過去のカレントディレクトリに戻ることができる、PushDPopDコマンド
  • IFコマンドで大文字・小文字を区別した文字列比較、数値比較、ブロック記述をサポート。
  • SETコマンドで数値の演算代入をサポート

関連項目[編集]