通常,如果您尝试复制不存在的文件,您会收到一条错误消息:
C:\temp>copy foo bar
The system cannot find the file specified.
我希望该错误消息被写入 STDERR,但它似乎被写入了 STDOUT:
C:\temp>copy foo bar >out
C:\temp>dir
Directory of C:\temp
23/09/2019 16:18 44 out
1 File(s) 44 bytes
0 Dir(s) 885,229,346,816 bytes free
C:\temp>type out
The system cannot find the file specified.
如果你将 STDERR 从 STDOUT 单独重定向,显然也会发生同样的情况
C:\temp>del out
C:\temp>copy foo bar 2>err >out
C:\temp>dir
Directory of C:\temp
23/09/2019 16:10 0 err
23/09/2019 16:10 44 out
2 File(s) 44 bytes
0 Dir(s) 885,226,635,264 bytes free
C:\temp>type out
The system cannot find the file specified.
我正在使用 Windows 10
C:\temp>ver
Microsoft Windows [Version 10.0.18362.356]
为什么 COPY 不会将错误消息写入 STDERR?此行为的记录在哪里?