题目要求

写一个shell脚本。提示输入一个暂停的数字,然后从1打印到该数字。然后询问是否继续。继续的话再输入一个数字接着打印,否则退出脚本。

例:如果输入的是5,打印1 2 3 4 5,然后继续输入15,然后打印6 7 …14 15 以此类推。

参考答案

#!/bin/bash
#这个脚本用来打印数字
#作者:猿课-阿铭 www.apelearn.com
#日期:2018-11-01

read -p "Please input a number: " n
n1=`echo $n |sed 's/[0-9]//g'`
if [ -n "$n1" ]
then
    echo "Please input a number."
    exit
fi

for i in `seq 1 $n`
do
    echo $i
done

read -p "If continue? y/n" c

case $c in
  n|N)
    exit
    ;;
  y|Y)
    read -p "Please input a number: " n2
    n3=`echo $n2|sed 's/[0-9]//g'`
    if [ -n "$n3" ]
    then
        echo "Please input a number."
        exit
    fi
    if [ $n2 -le $n ]
    then
        echo "$n2 should grater than $n."
        exit
    fi
    for i in `seq $[$n+1] $n2`
    do
        echo $i
    done
    ;;
  *)
    echo "Please input y or n."
    ;;
esac

09-12 03:47