убедитесь, что 2 аргумента переданы в файле bat - PullRequest
0 голосов
/ 09 июня 2010

Как мне убедиться, что в bat-файле переданы 2 аргумента?

Я хотел бы повторить описание аргументов и выйти из программы, если нет точно 2 аргументов.

Ответы [ 3 ]

2 голосов
/ 09 июня 2010

См. Примечание 1 на этой странице о необходимости наличия пустышки при тестировании на пустые строки.

IF dummy-==dummy-%1 (
    ECHO Syntax is blah blah
    EXIT /B
)

IF dummy-==dummy-%2 (
    ECHO Syntax is blah blah
    EXIT /B
)

Также я считаю этот хорошим справочным материаломпри записи командных файлов.

1 голос
/ 09 июня 2010

Вот еще один способ использования команды for:

@echo off

set /a argCount=0
for %%A in (%*) do set /a argCount+=1

@echo Number of args is: %argCount%

if %argCount% NEQ 2 (
    @echo Usage
    exit /b
)

Этот стиль будет обрабатывать случаи, когда вам нужно убедиться, что у вас более 9 аргументов.

1 голос
/ 09 июня 2010

Do

if "%2"=="" goto :usage

и затем поместите текст вашего использования внизу, после :usage метки. Просто убедитесь, что вы выходите из своего скрипта с goto :eof, чтобы вы не получили использование при нормальном завершении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...