1、打印99乘法表
这个主要时要清楚每一行shell的大意。
shell中for循环格式:
for ((i=0; i<10; i++))
do
循环语句
done
echo:回显,将数据答应到终端上
echo -n 要输出的内容 ---》将数据打印在终端上,不换行
echo -e 要输出的内容----》将数据打印在终端上,可识别字符串中的转义字符:\t \r \b等
#!/bin/bash
for ((i=1; i<=9; i++))
do
for j in `seq 1 $i`
do
echo -ne "$j * $i = $((i * j))\t"
done
echo
done
2、获取字符串中空格的个数
循环访问字符串中的每一个字符,然后与空格比较,计算出空格的个数
#!/bin/bash
read -p "请输入一个字符串>>>" str
str_len=${#str}
spacenumber=0
i=1
while [ $i -le $str_len ]
do
ch=`expr substr "$str" $i 1`
if [ "$ch" == " " ]
then
spacenumber=$((spacenumber + 1))
fi
i=$((i + 1))
done
echo spacenumber=$spacenumber
3、打印金字塔
#!/bin/bash
time=0
layer=$1
for i in `seq 0 $((layer - 1))`
do
for j in $(seq 0 $((layer + time)))
do
if [ $j -lt $(($layer - i)) ]
then
echo -n " "
else
echo -n "*"
fi
done
time=$((time + 1))
echo
done