2015-04-01 3 views
0

Это одна из наиболее неясных ошибок в пакете Windows, которые я получил.Пакетный файл «,» не распознается

В пакетном файле (первая и единственная строка кода):

CALL IF "%1"=="" (ECHO TRUE) ELSE (ECHO false) 

возвращает

',' is not recognized as an internal or external command, 
    operable program or batch file 

Я понимаю, что это не самый лучший способ вызвать если заявление, но делает кто-нибудь знаете, что пытается сделать интерпретатор?

Кстати, это работает и из командной строки, и то, что испытывает if, кажется, не имеет значения. Что бы ни происходило, кажется, с помощью вызывается CALL IF

+1

Введите 'CALL /?' В командной строке. Вы используете его совершенно ненадлежащим образом, и любая ошибка, которую вы получаете в результате, бессмысленна. –

+1

Почему вы хотите «ВЫЗОВ» заявление 'IF'? Почему бы просто не сказать 'IF '% 1" == ... 'без' CALL'? – lurker

+0

Я чувствую, что это один из немногих раз, когда я могу уйти, говоря это так, но лучший способ избежать этой ошибки - не делать этого. – SomethingDark

ответ

1

вопрос обсуждался здесь: Why I can't CALL "IF" and "FOR" neither in batch nor in the cmd?

Его из ВЫЗОВ и IF анализаторами (особенно, если, который имеет несколько фаз), но так как у нас нет командной строки источник мы не можем знать, почему именно это происходит.

+0

Спасибо. Я видел твой ответ. – user1167442

Смежные вопросы