当用set / P读取stdin时,似乎从管道读取它不起作用,而从重定向读取它可以正常工作。这显示如下:
D:\>echo 1 >f1
D:\>echo 2 >>f1
D:\>type f1
1
2
D:\>type f1 | (set line1=&set line2=&set /P line1=&set /P line2=&set line)
line1=1
line2=
D:\>(set line1=&set line2=&set /P line1=&set /P line2=&set line)<f1
line1=1
line2=2
D:\>
为什么line2在一个案例中读取而在另一个案例中不读?