-1

Сначала я попытался найти ответы на свои вопросы, и новичку действительно сложно сформулировать свои вопросы таким образом, чтобы получить онлайн результаты с ответами, имеющими отношение к текущей ситуации.

Что, как говорится.

Я пытаюсь написать простую программу, которая запрашивает, какой текст вы хотите повторить (и сколько раз вы хотели бы повторить это. У меня это работает, но для одной из переменных (сколько раз повторить), если один вводит текст вместо цифр, он потерпит неудачу. Так как же добавить оператор If/Else, который не сломает скрипт?

#!/bin/bash
echo "Please input text you wish to print."
read text
echo "Please input number of times you wish to print text."
read number
if for i in `seq $number`;
do
    echo "$text"
else echo "Try again with valid input.";
done

Этот скрипт работает отлично, однако.

#!/bin/bash
echo "Please input text you wish to print."
    read text
echo "Please input number of times you wish to print text."
    read number
for i in `seq $number`;
do
    echo "$text";
done

1 ответ1

1

Чтобы проверить, является ли ваша переменная числом, смотрите здесь.

Ваше заявление if не имеет условий ... Правильный синтаксис:

if [ some_condition ]
then
    # the code to execute if true (your `for` loop)
else 
    # the code to execute if false (optional)
fi  # "if" backwards

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .