【ハウツー】

ゼロからはじめるバッチプログラミング - 環境変数編

7 バッチと環境変数で計算する.2

    赤坂玲音  [2008/10/28]

    プログラミング経験のある方であれば、変数は単項式であるという解釈が一般的だと思いますが、バッチ処理のおける環境変数の参照は、純粋にコマンド実行時レベルのテキスト展開にすぎません。よって、環境変数そのものに、実行するべきコマンドを保存し、環境変数を参照してコマンドを実行するといったことも可能です。

    サンプル07

    @echo off
    
    set PARAM=Kitty on your lap
    set COMMAND=echo %PARAM%
    
    %COMMAND%
    
    pause
    

    実行結果

    サンプル07の実行結果

    サンプル07は、事前に用意された環境変数COMMANDを展開して、その結果をコマンドとして実行しています。COMMAND変数にはechoコマンドを表す文字列が保存されていますが、パラメータからさらに%PARAM%変数が参照されます。このバッチファイルを実行すると、正しくCOMMAND変数の文字列がコマンドとして実行されていることが確認できます。

    このような性質を利用すれば、ある種のメタプログラミングのような、バッチ処理をバッチファイルで動的に生成するといったことが可能です。しかし、バッチファイルの本来の目的を考えれば、どのようなコマンドが実行されるか分からないような、複雑に参照し合う処理は避けるべきでしょう。

    参考文献

    [Microsoft TechNet コマンド ライン リファレンス]

    関連記事

    関連したタグ

    新着記事

    特設サイトの情報

      人気記事

      一覧

      新着記事

      特別企画

      マイナビニュースマガジン