How to capture stderr on Windows/DOS?

2019-01-21 22:29发布

I want to capture the errors from a script into a file instead of to the screen.

In *nix, this is done with stderr redirection, usually

echo "Error" 2> errorfile.log

How do I do it in a CMD script under Windows?

2条回答
欢心
2楼-- · 2019-01-21 22:31

For example:

PSKILL NOTEPAD >output.txt 2>&1

This will direct stdout and stderr to a file name output.txt.

See Underused features of Windows batch files for more details.

查看更多
【Aperson】
3楼-- · 2019-01-21 22:38

That should work in Win32, too.

If you have already redirected stdout, and want stderr redirected to the same file, you must use the 2>& special form, rather than just specifying the same file twice. Otherwise you'll get a "file busy" error.

查看更多
登录 后发表回答