Как отправить сообщение в stderr из cmd?
В стандартном файле Windows.cmd я могу отправлять сообщения на stdout просто:
echo message
Как отправить сообщение в stderr?
Пример:
Скажем, у меня есть script parent.cmd, содержащий:
call child.cmd 1>>stdout.log 2>>stderr.log
и дочерний элемент, содержащий:
:: Writes a message to stdout
:: (which in the parent is piped to stdout.log)
echo message
:: Now I want to write a message to stderr
:: (which in the parent is piped to stderr.log)
???
Ответы
Ответ 1
Вы можете попробовать перенаправить дескриптор STDOUT на дескриптор STDERR. В дочернем процессе выполните эхо с перенаправлением дескриптора:
:: Writes a message to stdout
:: (which in the parent is piped to stdout.log)
echo message
:: Now I want to write a message to stderr
:: (which in the parent is piped to stderr.log)
echo message 1>&2
Microsoft" splainin it
Ответ 2
Попробуйте echo message 1>&2
Я только что попробовал это и, похоже, работает правильно, даже изнутри пакетного файла.