1.输入年月日分别存储在year month day变量中,计算是该年的第几天
#!/bin/bash
read -p "请输入年月日:" -a date
n=${date[0]}
y=${date[1]}
r=${date[2]}
x=0
if [ $y -eq 1 ]
then
x=$r
elif [ $y -eq 2 ]
then
x=31+$r
elif [ $y -ge 3 ] && [ $y -le 8 ] || [ $y -eq 10 ] || [ $y -eq 12 ]
then
if [ $((n%4)) -eq 0 ] && [ $((n%100)) -ne 0 ] || [ $((n%400)) -eq 0 ]
then
x=$((($y-1)*30+$y/2+$r-1))
else
x=$((($y-1)*30+$y/2+$r-2))
fi
elif [ $y -eq 9 ] || [ $y -eq 11 ]
then
if [ $((n%4)) -eq 0 ] && [ $((n%100)) -ne 0 ] || [ $((n%400)) -eq 0 ]
then
x=$((($y-1)*30+($y+1)/2+$r-1))
else
x=$((($y-1)*30+($y+1)/2+$r-2))
fi
fi
echo "输入的日期为该年的第$x天"
2.从命令行传参传入两个整数,整数1代表从整数几开始求和,整数2代表求和到整数几为止
#!/bin/bash
if [ $# -ne 2 ]
then
echo "必须传入两个整数"
exit
fi
sum=0
for((i=$1;i<=$2;i++))
do
sum=$((sum+i))
done
echo "结果为:$sum"
3.打印99乘法表
#!/bin/bash
#打印九九乘法表
for i in `seq 1 9`
do
for j in `seq 1 9`
do
((num=$j*$i))
echo -n "$j*$i=$num "
if [ $j -ge $i ]
then
break 1
fi
done
echo ""
done