К чему приводит косая черта перед переменной в операторе IF в пакетной обработке Windows?

К чему приводит косая черта перед переменной в операторе IF в пакетной обработке Windows?

Мне нужно адаптировать старый пакетный скрипт, и /во многих командах перед именем переменной стоит if.

if /%error_found% == /0 (
  ...
)

Какая разница, использовать слеш или нет. У меня это утверждение работает даже без слеша.

if %error_found% == 0 (
  ...
)

Бывают ли случаи, когда косая черта имеет значение?

решение1

Мне кажется, что это синтаксическая ошибка в сравнении строк, хотя должно быть:
/%error_found%/ == /0/.

Лучшим синтаксисом было бы использование кавычек:
"%error_found%" == "0"
Или скобок:
(%error_found%) GEQ (0).

Ваш синтаксис %error_found% == 0будет работать только в том случае, если %error_found% не содержит пробелов и не является пустым.

Для получения более подробной информации см. Команда ЕСЛИ.

Связанный контент