コマンドプロンプトとバッチファイル内でのエスケープの違いとは

スポンサード リンク

このページではコマンドプロンプト(コマンドライン1)、およびバッチファイル内におけるエスケープの違いに関して説明します。
コマンドプロンプト及びバッチファイルでは & を表示するには ^& を使用します。

一方で % は扱いが異なるようです。コマンドプロンプトでは% はそのままエスケープは不要なようです。一方でバッチファイルでは %% のようなエスケープが必要なようです。
これらは Windows 10で動作確認しました。バージョンによって異なる可能性もあります。

スポンサード リンク

(注意)分かりやすく簡単に記載しており、一部の環境や分野では記載内容が異なる可能性があります。あくまでも参考程度でお読みください。

比較表

比較は以下の表の通りとなります。

説明コマンドプロンプトでの実行バッチファイル内
&^& → &
^& → &
& のコマンドサンプルecho ^&
%%のエスケープは不要%% → %

ただしバッチファイル内で %KANKYO_HENSU% のような記載は変数が展開される。要するに %%KANKYO_HENSU%% のような記載は不要。
% のコマンドサンプルecho %
echo %%


アンバサントをコマンドラインでエスケープ表示する

関連リンク:
「エスケープ」と「エンコード」は何が違うのか
powershell と コマンドプロンプトの違い
コマンドプロンプトとMS-DOSプロンプトの違い
netsh、wmic、powershell、コマンドプロンプトの違い
「ファイル名を指定して実行」と「コマンドプロンプト」の違い
Powershell実行方法の違い | インタプリタ、スクリプトファイル、コマンドプロンプトから実行







【注意】本ページは著作権で保護されています。内容は何人も補償しません。時間的あるいは金銭的損失等、一切保証しません。

理解しやすく記載されており、一部不正確な記載がある可能性があります。ご自身の責任で参考にしてください。