2022年5月
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 31        
無料ブログはココログ

« パイプ前後の複文中の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コマンドからの途中脱出 »