Введение в пакетный скриптинг - PullRequest
0 голосов
/ 05 августа 2011

Это мой скрипт

echo "Name"
read name
if [ "$name" == "abcd" ]; then
   echo "correct name"
else
    echo "wrong name"
fi

echo "Password"
read password
if [ "$password" == "pwd" ]; then
    echo "Correct password"
else
    echo "Wrong password"
fi

echo "City"
read city
if [ "$city" == "bangalore" ]; then
    echo "correct city"
else
    echo "wrong city"
fi

Я совершенно новичок в пакетном скриптинге. Как мне написать эквивалентный .bat файл?

Ответы [ 3 ]

2 голосов
/ 05 августа 2011

Необходимо прочитать две вещи:

  • Как запросить ввод данных пользователем: см. Команду set и особенно set /p.Вы можете получить информацию об этом, набрав help set в командной строке.
  • Как проверить равенство строк: Команда if имеет некоторую информацию об этом, введите help if в командной строке, чтобы получить некоторые подробности.

Когда все это будет на месте, вы сможете повторить поведение вашего bash-скрипта.

1 голос
/ 05 августа 2011

Рассмотрите возможность запуска сценария bash в Windows вместо сценария переноса. См. bash-shell-for-windows . Это может быть проще подход.

0 голосов
/ 05 августа 2011

Посмотрите здесь, как получить информацию: Ввод командного файла

Редактировать : Содержание ссылки (больше не доступно) было:

    The following method will work on Windows 2000 and XP:

set INPUT=
set /P INPUT=Type input: %=%
echo Your input was: %INPUT%

If user hits ENTER without typing anything, the variable (in this case, %input%) keeps it value. So, the first line is to reset its value, so that if nothing is entered the variable will have no value at all, instead of some senseless value.

As you can see, that accepts blank inputs. You can make it to don't accept:

:input
set INPUT=
set /P INPUT=Type input: %=%
if "%INPUT%"=="" goto input
echo Your input was: %INPUT%

So, after getting user's input and saving it in a variable, you can use it as you will.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...