你声明变量输入的参数写错了,
正确的应该是 num,
你的是mun不对,看下图:
#!/bin/bash
read -p "please input a number from 1 ~ 10: " num
if [ $num -lt 1 -o $num -gt 10 ]; then
echo "you type a wrong number"
exit
elif [ $num -lt 5 ]; then
echo "$num lessthen 5"
else
echo "$num"
fi
#!/bin/bash
read -p "请输入一个数(1~10):" num
if [ $num -lt 1 -o $num -gt 10 ]
then
echo "错误的数"
exit
elif [ $num -lt 5 ]
then
echo "$num 小于5"
else
echo "$num 大于5"
fi
源码,望采纳,代码对齐强迫症
你的第一判断是想说num<1 或者 num>10 吧, 你试着运行一下,看是否是你想要的结果
-eq //等于
-ne //不等于
-gt //大于 (greater )
-lt //小于 (less)
-ge //大于等于
-le //小于等于
#!/bin/sh
read -p"(1-10):" num
if [[ $num -lt 1 ]] || [[ $num -gt 10 ]];
then
echo "wrong"
exit
elif [[ $num -lt 5 ]];
then
echo "$num -lt 5"
else
echo "$num"
fi
read那一行,后面的变量是num,你写成mun了