1 seq语句
2 for语句
3 应用-监控某主机存活脚本
for ((;;))
do
ping -c1 $1 &>/dev/null
if [ $? -eq 0 ]; then
echo -e "`date +"%F %H:%M:%S"` $1 is UP"
else
echo -e "`date +"%F %H:%M:%S"` $1 is DOWN"
fi
# 每5秒ping一次
sleep 5
done
注:
ping -c1 $1 &>/dev/null
- ping -c1: c指count, 这里就是只ping一次
- &: 指后台运行
/dev/null: 标准输出和错误输出都输出到空设备上, 其实就是丢弃所有输出
4 应用-输入字符Q时退出
for ((;;))
do
read -p "char:" ch
if [ $ch == "Q" ]; then
break
else
echo "你输入的字符是:$ch"
fi
done
5 应用-跳出多次循环
for((i=0;i<100;i++));do
echo "loop$i"
for((;;));do
echo "directly break 2 layer"
break 2
done
done
6 应用-丈母娘选女婿
```shell read -p “money:” money read -p “car:” car read -p “house:” house
while (( $money < 10000 )) || (( $car < 1 )) || (( $house < 1 )); do echo “不行” read -p “money:” money read -p “car:” car read -p “house:” house done
echo “给你了”
<a name="OdoIS"></a>
# 7 应用-九九乘法表
```shell
for((i=1;i<10;i++)); do
for((j=1;j<=i;j++)); do
echo -n -e "$i*$j=$(($i*$j))\t"
done
echo ""
done