Как указано в приведенном выше параграфе, это оператор bitwise OR
.Он используется для одновременной установки нескольких двоичных флагов.
В коде
SET /A ERROR_HELP_SCREEN=1
SET /A ERROR_SOMECOMMAND_NOT_FOUND=2
SET /A ERROR_OTHERCOMMAND_FAILED=4
ERROR_HELP_SCREEN равно 0b001
ERROR_SOMECOMMAND_NOT_FOUND равно 0b010
ERROR_OTHERCOMMAND_FAILED равно 0b100 *побитовое ИЛИ позволит вам вернуть что-то вроде 0b101, что будет означать, что другая команда завершилась неудачно и возникла ошибка экрана справки.
^
необходим, потому что пакетные сценарии обрабатывают |
как каналы независимоконтекста, поэтому SET /A errno|=%ERROR_OTHERCOMMAND_FAILED%
выдаст синтаксическую ошибку, даже если она совершенно допустима в командной строке.