2017年11月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
無料ブログはココログ

« パイプ前後の複文中のECHOの行末に空白が付く。 | トップページ | FORコマンドからの途中脱出 »

2007年4月 5日 (木)

SET /Pはパイプをうまく読めない。(障害)

例えば、HOGE.CMDが

@ECHO OFF
SETLOCAL
SET /P X=
ECHO X=%X%
SET /P Y=
ECHO Y=%Y%
SET /P Z=
ECHO Z=%Z%

のとき、

HOGE.CMD <HOGE.CMD

はちゃんと読めます。しかし、

MORE HOGE.CMD|HOGE.CMD

の結果は無茶苦茶です。同じ入力なのに結果はばらばらです。
1行の途中で分割したり、空読みしたり、読み飛ばしたり。

回避方法はありません。SET /Pを使わないことです。

« パイプ前後の複文中のECHOの行末に空白が付く。 | トップページ | FORコマンドからの途中脱出 »