Ввод данных в bat
Здравствуйте, есть батник который пингует разными способами. По идее юзер вводит ip как параментр при запуске типа ping.bat 192.168.0.1 <параметры>. Я хочу сделать что-бы батник проверял ввели ли IP и если нет, предложил бы ввести. Вот что я написал:
if %1=="" (
set /p var1="Enter IP-"
set %1=="%var1%"
)
И ноль реакции. Что я не так делаю? Подскажите пожалуйста.
|
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
set sIP=%~1
if not defined sIP (
set /p sIP=Enter IP:
)
if defined sIP (
echo [%sIP%]
) else (
exit /b 1
)
endlocal
exit /b 0
Цитата:
Цитата SergeiSO
И ноль реакции. Что я не так делаю? »
|
Проводите некорректное по синтаксису сравнение «if %1==""» в случае отсутствия заданного параметра. Проводите некорректное присваивание «set %1=="%var1%"» — внутренним переменным %0-%9 нельзя присвоить значение по set (да и не нужно).
|
Спс огромное все работает. Как я понял, %0-%9 в батнике вообще не поменять? Печально, у меня там все на них завязано.
|
Цитата:
Цитата SergeiSO
Как я понял, %0-%9 в батнике вообще не поменять? Печально, у меня там все на них завязано. »
|
А зачем их менять? Я же пишу — в этом нет никакой необходимости. Просто присваиваете по нужде их содержимое переменным окружения и пользуете последние. В каких-то случаях используется shift.
|
Время: 22:53.
© OSzone.net 2001-