このページは書きかけです。以下の可能性があります。・誤字、脱字等のチェックをおこなっていません。・テキスト、表などフォーマットがされていない。→コマンドがMSX-DOSに与えられ、それが内部コマンドでない場合、その名前で拡張子がCOMまたはBATのファイルが検索されます。カレントディレクトリ中で見つからないと、現在の検索パスが参照されます。(P.21「PATH」を参照)。COMファイルが見つかると、ロードして実行します。BATファイルが見つかると、MSX-DOSはバッチファイルの実行を開始します。バッチファイルとはコマンドのリストを含むテキストファイルであり、これらのコマンドは一時に1行ずつファイルから読み込まれて、あたかもキーボードから入力されたかのように実行されます。5章「コマンド」で説明したコマンドのうち、ECHOやPAUSE、IFなどは、主としてバッチファイル中で使用するために用意されています。それぞれのコマンドが読み込まれると、通常即座に実行されます。ON」コマンドを使って「ON」にセットすると、各コマンドの実行前にコマンド行自体を画面上に表示することができるようになります(8章の環境変数についての記述を参照)。コマンド行はその場合、%パラメータの代入(後述)が実行されてからエコーされます。OFF」は、これを通常の状態に戻します。バッチファイルを起動するコマンド行では、他のコマンドや外部プログラム名と同様パラメータをバッチファイルの名前の後に続けることができます。これらのパラメータは%0〜%9を指定することによって、バッチファイル中のどこからでもアクセスすることができます。%1がコマンド行で指定される最初のパラメータで、%2が2番目のパラメータなどとなります。%0はバッチファイルそれ自身の名前です。%数字は元のコマンド行のパラメータで置き換えられ、バッチファイル中のどこででも使用できます。コマンド行で実際に「%」記号を使用するには、2つの%(「%%」)を与えなければならず、これは単一の%に変換されます。環境変数名の前後に%をつけることにより、環境変数をバッチ中に取り込むことができます(これは、ver.2.31から追加された機能です)。%環境変数名%は環境変数の設定値に置き換えられ、バッチファイル中のどこででも(バッチファイル中に限らずコマンド行でも)使用できます。バッチファイル中のコマンドの実行が何らかの理由で中断された場合(特にCTRL+STOPやCTRL+Cが押された場合)、次のようなプロンプトが出力されます。(Y/N)?これに対して「Y」を答えると、バッチファイル全体の実行が停止します。応答が「N」であると、バッチファイルの実行はバッチファイル中の次のコマンドから続行されます。MSX-DOSがバッチファイル中のコマンドを実行し終わると、バッチファイル中の次のコマンドをディスクから読み出さなければならない場合があります。その場合正しいディスクがドライブ中にないとプロンプトが出力されます。バッチファイルが最初ドライブAから実行された場合、次のようなプロンプトが出力されます。continueバッチファイルの入ったディスクをドライブA:にいれて何かキーを押して下さい.正しいディスクが挿入され、キーが押されると、バッチファイルの実行は正常に続行します。以下に示すのは非常に単純なバッチファイルであり、最初のいくつかのパラメータを表示するだけのものです。cは以下の出力を行います。c最初にMSX-DOSが起動されると、AUTOEXEC.BATという特殊なバッチファイルが検索され、もしあれば実行されます。これにはどんなMSX-DOSコマンドを含めても良く、その中にはRAMディスクを設定するRAMDISKコマンドのように、立ち上げ時に1度だけ実行すればよい初期化コマンドなどを指定しておくと便利です。この場合、AUTOEXEC.BATにはひとつの%パラメータが%1として渡されます。これはMSX-DOSが起動されたドライブ名で、コロンが後に付いた通常のドライブ名の形を取ります。ひとつの特殊なバッチファイルはREBOOT.BATです。BASICを使用した後で、MSX-DOSが再起動されるときに実行されます。AUTOEXEC.BATファイルと同様、MSX-DOSが再起動したドライブが%1パラメータとして渡されます。最初であれ、2度目以降であれ、MSX-DOSを起動するときには、通常いくつかのコマンドを実行する必要があり、これらをREBOOTバッチファイルに入れておきます。%1で終わらせることによって、AUTOEXECバッチファイルから実行することができます。REBOOTバッチファイル中に入れておくコマンドの一例は、外部コマンドの検索パスを設定するPATHコマンドです。このコマンドを使用して検索パスを設定すると場合、%1を使用して、どのドライブから起動しても正しいパスを設定することができます。バッチファイル中のコマンドが別のバッチファイルの名前である場合、2番目のバッチファイルが続いて実行されます。それが終了すると、制御はコマンドインタープリタに戻り、最初のバッチファイルには戻りません。バッチコマンドは「チェイン」します。バッチファイルを「ネスト」する、つまり上記の場合に最初のバッチファイルへ制御を戻すには、COMMAND2コマンド(P.84「COMMAND2」を参照)に、2番目のバッチファイルの名前をパラメータとして渡します。その場合、2番目のバッチファイルが終了すると、最初のバッチファイルがCOMMAND2コマンドの後のコマンドから続けられます。一般的なAUTOEXECバッチファイルの例を次に示します。%1一般的なREBOOTバッチファイルの例を次に示します。executing」のメッセージを表示し、RAMディスクを最大100Kで設定します。次に別のRAMDISKコマンドで作成されたRAMディスクの実際の大きさを表示します。COPYコマンドでCOMMAND2.COMをRAMディスク上にコピーし、再ロードを高速にできるようにします。最後にREBOOTバッチファイルを起動し、それに%1パラメータ(ブートドライブ名)を渡します。REBOOTバッチファイルはメッセージを表示し、それからPATHを設定します。パス中の最初の項目はAUTOEXECバッチファイルで作成されたRAMディスクを参照しており、その他の項目はMSX-DOSがブートされたディスク(つまり%1)中のディレクトリを参照しています。次にCOMMAND2.COMがRAMディスクから高速に再ロードできるようにSHELL環境変数をセットアップし、RAMディスク上にパイプファイルを作成するようにTEMP環境変数を設定します。最後にPROMPTをONにセットして、カレントディレクトリがプロンプトとして表示されるようにし、RAMディスクをカレントドライブにします。Perl5.008007。