Помогите ли это:
#!/bin/bash
echo -n "How many times should I run? "
read numOfTimes
for i in $(seq 1 $numOfTimes);do
echo $i
done
Давайте разделим объяснение на части:
Конечно, в более сложном сценарии вы должны проверить, является ли ответ пользователя Nemeric и больше нуля, но я думаю, что этот пример сделает трюк для того, что вы хотите выполнить.
Источник: http://tldp.org/howto/bash-prog-intro-howto-7.html
Вот один лайнер:
read -p "No of Repetitions?" repeat; for i in $(seq $repeat); do echo "This is $i"; done
Если вы хотите запустить это, если $ SSH_CONNECTION
не пусто:
[[ -n $SSH_CONNECTION ]] && read -p "No of Repetitions?" repeat; for i in $(seq $repeat); do echo "This is $i"; done
&&
указывает на выполнение следующей команды только в том случае, если предыдущая была успешной ( $? = 0
)
read -p «Количество повторов?» Repeat
запросит «Количество повторов?»
и сохранит ввод как переменную repeat
.
для i в $ (seq $ repeat); do echo "Это $ i"; done
этот цикл for будет использовать seq
для выполнения заданного количества циклов для выполнения задания. Вы должны заменить echo "This is $ i"
любой операцией, которую вы хотите выполнить.
Это можно сформулировать как:
if [[ -n $SSH_CONNECTION ]]; then
read -p "No of Repetitions?" repeat
fi
for i in $(seq $repeat); do
echo "This is $i"
done