1.你需要打印一个给定的数字的反序,如输入10572,输出27501,如果没有输入数据,应该抛出错误和使用脚本说明。
read -p "Please input a int num:" num
expr $num + 1 &> /dev/null
[ ! $? -eq 0 ] && {
echo "shu ru cuo wu"
exit 1
}
echo $num | rev
read -p "Please input a int num:" num
expr $num + 1 &> /dev/null
[ ! $? -eq 0 ] && {
echo "shu ru cuo wu"
exit 1
}
c=0
while true
do
if [ ! $num -eq 0 ]
then
let a=num/10
let b=num%10
let c=c*10+b
num=$a
else
break
fi
done
echo $c
2.写出SHELL函数RevertInput,函数必须获取三个参数,然后将三个参数倒序echo打印出来,函数必须检查参数个数的合法性,如果参数非法,打印”Illegal parameters”,对于下面的输入:
RevertInput “this is para1” para2 para3
应该输出:
para3
para2
this is para1
(注:需要注意第一个参数中的空格)
RevertInput(){
array1=("$1" $2 $3)
for ((i=2;i>=0;i--))
do
if [ -z "${array1[$i]}" ]
then
echo "Illegal parameters"
else
echo ${array1[$i]}
fi
done
}
RevertInput "this is para1" para2 para3