2011年8月5日金曜日

バッチファイルの処理を途中で終わらせる書き方。EXIT と GOTO :EOF - Windowsのコマンドプロンプト(bat,cmd)

Windowsコマンド。プログラム実行関連
○Windows XP
バッチファイルの処理を途中で終わらせる書き方は、次の3つがあります。
それぞれ、特徴がありますので、状況に応じて使い分けると便利です。


**** コマンドと用途
o EXIT [ 戻り値 ] = 呼び出し元も含めて、処理を途中で終了する
o EXIT /B [ 戻り値 ] = そのバッチファイルだけ途中で終わらせる
o GOTO :EOF = そのバッチファイルの最後に移動する
(キーワードは、小文字で書く事も出来ます。)

通常は、EXIT や EXIT /Bが便利です。戻り値を書く事も出来ますから。
一方、「GOTO :EOF」の書き方の方が相応しいと思う時もあります。
    + それは、「CALL :ラベル」を使っていて、CALL文に戻る時。
    + EXIT /B を使う事も出来るのですが、なんとなく、終了っぽい書き方をしたくなかったりします。


**** メモ
o 裏技として、PAUSEコマンドを入れておいて、停止した時に「Ctrl + C」「Y」 で終了するというデバッグ技があります。
    + 「Ctrl + C」 = 「Ctrl」キーを押しながら「C」キーを押します。
    + 但し、PAUSEコマンドを外すのを忘れて自動実行してしまうと、後ですごく困ります。


**** 確認したバージョン
o Windows XP Service Pack 3


==
関連ページ:
    ▼Windowsコマンド。プログラム実行関連▼ABC順
    ▼コマンドを実行する
    ▼コマンドプロンプト画面
    ▼制作メモ
    > バッチファイルのお気軽実行を防ぐ
    ファイルやフォルダーのパスを書いて、エラーになる時の確認点
    バッチファイルで、空白(=スペース)付きの引数(= パラメーター)を扱う方法
    +
    GOTO = 指定したラベルに移動する
    CALL = バッチファイルやラベルを呼び出す
    PAUSE = 処理を一時停止する
    EXIT = 終了する