2014.
09.
14
12:03:24
何の役に立つかは分からないのですけどね。
ふと、気になったのです。
バッチファイルでバッチファイルを作って実行できるのかな(--?って。
理屈上はいける気がするのですが、
競合したり排他があったりで罠があるのかな(--?
気になったので、実験してみました。
処理の流れは
1.echoをファイルにリダイレクトする形でバッチファイルを作成
2.callコマンドを使って「1.」で作成したバッチファイルを実行
3.delコマンドで「1.」で作成したバッチファイルを削除
です。
サンプルコードはこんな感じφ(--)
結果はこんな感じφ(--)

おぉ、普通にできた(人´∀`)
ちゃんと一回目の「pause」の時点で「sub.bat」は存在して、
二回目の「pause」の時点で「sub.bat」はなくなってました。
これはなんて大発見でしょう!ヾ(´∀`)ノ
使い道が思い浮かばないですけどね(--ゞ
とにかく、バッチファイルの中でバッチファイルを作成して、
そのバッチファイルを一連の流れの中で動かすことはできるようです。
そんな感じ\(--)/
ふと、気になったのです。
バッチファイルでバッチファイルを作って実行できるのかな(--?って。
理屈上はいける気がするのですが、
競合したり排他があったりで罠があるのかな(--?
気になったので、実験してみました。
処理の流れは
1.echoをファイルにリダイレクトする形でバッチファイルを作成
2.callコマンドを使って「1.」で作成したバッチファイルを実行
3.delコマンドで「1.」で作成したバッチファイルを削除
です。
サンプルコードはこんな感じφ(--)
@echo off
echo main start
REM バッチファイル作成
echo echo sub start > sub.bat
echo pause >> sub.bat
echo echo sub end >> sub.bat
REM バッチファイル実行
call sub.bat
REM バッチファイル削除
del sub.bat
echo main end
pause
echo main start
REM バッチファイル作成
echo echo sub start > sub.bat
echo pause >> sub.bat
echo echo sub end >> sub.bat
REM バッチファイル実行
call sub.bat
REM バッチファイル削除
del sub.bat
echo main end
pause
結果はこんな感じφ(--)

おぉ、普通にできた(人´∀`)
ちゃんと一回目の「pause」の時点で「sub.bat」は存在して、
二回目の「pause」の時点で「sub.bat」はなくなってました。
これはなんて大発見でしょう!ヾ(´∀`)ノ
使い道が思い浮かばないですけどね(--ゞ
とにかく、バッチファイルの中でバッチファイルを作成して、
そのバッチファイルを一連の流れの中で動かすことはできるようです。
そんな感じ\(--)/