我的shell脚本有什么问题?



我试图打印一个数字的阿姆斯特朗和,但我得到以下错误:

expr:语法错误:意外参数' armstrong.sh错误:"+"后缺少参数

问题在哪里?

echo "Enter number"
read n
declare l=0
declare num=$n
while [ $num -gt 0 ]  
do
l=`expr $l + 1`
num='expr $num / 10'
done
num=$n
declare sum=0
declare d=0
while [ $num -gt 0 ]
do
d=`expr $num % 10`
dum=`expr $d ** $l`
sum=`expr $sum + $dum`
num=`expr $num / 10`
done
echo $sum
echo "Enter number"
read n
declare l=0
declare num=$n
while [ $num -gt 0 ]
do
l=`expr $l + 1`
num=`expr $num / 10`
done
num=$n
declare sum=0
declare d=0
while [ $num -gt 0 ]
do
d=`expr $num % 10`
dum=`expr $d * $l`
sum=`expr $sum + $dum`
num=`expr $num / 10`
done
echo $sum

最新更新