🌟
Windows Batchで外部のコンフィグを環境変数を一括設定する。
外部環境変数
外部環境の設定を別ファイルに切り出せば、実行環境関連の設定を別のコンフィグに切り出す必要があります。
Windows Batchファイルで読み込む処理を簡単で整理しておきます。
Windows Batchのサンプル実装
一行ずつ読み込んで環境変数を設定します。
@ECHO off
SETLOCAL EnableDelayedExpansion
for /f "delims=" %%a in (test.config) do (
for /F "tokens=1,* delims=\=" %%b in ("%%a") do (
@REM KEYが存在する場合のみ、変数を設定する。(要件にて修正してください)
if NOT "%%b"=="" if NOT "%%c"=="" ( SET %%b=%%c )
)
)
PAUSE
ポイント解析
-
コマンド本文を出力しないようにする。
@ECHO off
-
変数の内容を遅延展開させてる。
SETLOCAL EnableDelayedExpansion
-
文字列を分解して、変数に設定する。
for /F "tokens=1,* delims=\=" %%b in ("%%a") do ( # do some thing with vars(%%b %%c). )
テストデータ
上記のバッチと同じフォルダーに置いてから実行してください。
test.config
AAA=testa
BBB=testb
CCC=testc
DDD=testd=ddd
Discussion