对于shell脚本中的循环,以整数作为输入

时间:2014-06-01 13:55:34

标签: shell loops

我试图将整数作为输入并尝试将数字从1打印到输入数字。 我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

这样的事情会起作用:

read -p "Loop until: " n
for i in $(seq 1 $n); do
    echo $i;
done

$n将包含用户输入。 seq程序只是构建一个从1到$n的数字序列,for循环打印此序列中的每个项目。

答案 1 :(得分:0)

您可以在shell中使用算术初始化,而不是使用seq命令。 您可以使用以下代码执行此操作。

$ cat test
#!/bin/bash


read -p "Loop until: " n
a=1
while true; do
    if [ $a -le $n ]; then
        echo $a
    else
        break
    fi
a=$(($a+1))
done

$ sh test
Loop until: 4
1
2
3
4