FOR /F "tokens=1" %%i IN (hoge.txt) DO (
ECHO NAME=%%i
SET NAME=%%i
ECHO NAME=%NAME%
)NAME=aaa NAME=
変数に代入すると変数の中身が消える。なんだろうこれ。
FOR /F "tokens=1" %%i IN (hoge.txt) DO (
ECHO NAME=%%i
ECHO %%i>tempfile
SET /P NAME=<tempfile
ECHO NAME=%NAME%
)一旦外部ファイルに出してもダメ。しかし外部ファイルにはちゃんと出力されている・・・
FOR /F "tokens=1" %%i IN (hoge.txt) DO (
ECHO NAME=%%i
SET NAME=aaa
ECHO NAME=%NAME%
)NAME=aaa NAME=
ようするに、FOR文の中ではSETが動作しないっぽい。なるほど。ふざけんな。
IF文とか、FOR文で使う ( ) の中だと、SETが動作しないことがある。 ときどき動作することもあるが、その条件はわからない。ELSE節はアウト?
GOTO文を駆使してなるべく最上位階層で走行させる必要がある・・・?