Добавление, если оператор к существующему циклу с условием продолжения

Я должен сделать, добавляют если оператор к моему циклу с условием продолжения. При записи./scriptname 1 это выполняет мой в то время как lopp. Когда я вместо этого пишу./scriptname привет, он все еще выполняет мой цикл с условием продолжения. То, что я хочу, чтобы это сделало, повторить "нет", если я добавляю буквы после./scriptname, но выполняю цикл с условием продолжения, если я добавляю числа после./scriptname. Кто-либо знает то, что я сделал неправильно в присоединенном сценарии? введите описание изображения здесь

0
задан 27 October 2019 в 18:06

1 ответ

Это - хорошая практика для хранения if-then-statement максимально коротким, этот способ, которым Вам не нужно else оператор.

#!/bin/bash

x=$1
y=$2

if [[ $x =~ (^$|[^0-9]) ]]; then
    echo "no"
    exit 0
fi
while (( $x <= 3 )); do
    echo "$x $y"
    ((x++))
    sleep 5
done

Или с для цикла:

for ((z=3; $x<=$z; x++)); do
    echo "$x $y"
    sleep 5
done
1
ответ дан 22 December 2019 в 00:12

Другие вопросы по тегам:

Похожие вопросы: