写一个shell脚本。提示输入一个暂停的数字,然后从1打印到该数字。然后询问是否继续。继续的话再输入一个数字接着打印,否则退出脚本。
例:如果输入的是5,打印1 2 3 4 5,然后继续输入15,然后打印6 7 …14 15 以此类推。
用
read -p
提示用户输入数字,得到第一个数字
判断用户输入的是否是纯数字
第一次循环后,若用户继续输入数字,此时不仅要判断输入的是否是纯数字,还要判断输入的数字是否比第一个数字大
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
#!/bin/bash
judge(){ num=`echo $1 |sed 's/[0-9]//g'` [ -n "$num" ] && echo "Please input a number." && exit }
read -p "Please input a number: " n judge $n
for i in `seq 1 $n` do echo $i done
read -p "If continue? y/n: " c case $c in y|Y) read -p "Please input a number: " n1 judge $n1 if [ $n1 -le $n ] then echo "Please input a number grater then $n." && exit else for i in `seq $[$n+1] $n1` do echo $i done fi ;; n|N) exit ;; *) echo "Please input y or n." && exit ;; esac
|