shell基本语法

1、关于if的应用
if后边跟的条件必须用[ ](中括号)括起来然后下边用then ,最后用fi
#!/bin/bash
#if test2
echo -n "Enter your name: "
read NAME
if [ "$NAME" == "" ]
then
echo "You dont't enter any word "
fi

2、关于if/elif/else的应用
if后边跟的条件必须用[ ](中括号)括起来然后下边用then,elif后边跟的条件也必须用[ ](中括号)括起来然后下边用then,然后用else最后用if
#!/bin/sh
echo "Please input a number year :"
read year
let "n1=$year%4"
let "n2=$year%100"
let "n3=$year%400"
if [ ! "$n1" -eq 0 ]
then
leap=0
elif [ ! "$n2" -eq 0 ]
then
leap=1
elif [ ! "$n3 -eq 0" ]
then
leap=0
else
leap=1
fi
if [ $leap -eq 1 ]
then
echo "$year is a leap year"
else
echo "$year is not a leap year"
fi

3、关于case的运用
case在条件后面必须跟一个in,然后下边条件用alue)跟的条件语句结尾用两个;;(分号),最后一个条件为*),最后用上esac。
#!/bin/sh
echo "Please input a month: "
read month
case $month in
1)
echo "yes 1 " ;;
2)
echo "no 2 " ;;
*)
echo "other " ;;
esac

4、关于for的应用
1)for的列表循环,循环体前用in 、,循环体用{ }大括号括起来,然后用do和done。
2)不带列表的for循环,for后直接跟条件,然后用do和done。
3)类C风格的for循环,for后边用(())两层双括号括住条件,条件之间用;分号隔开,然后用do和done。
#!/bin/sh
2 sum=1
3 for (( i = 1 ;i <= 10 ;i++ ))
4 do
5 let sum*=i
6 echo sum =$sum
7 done
8 echo long sum ="$sum"

5、关于while的应用
1)在计数器中的while循环后边必须用(())双层小括号,然后用do和done。
2)其他条件下while后边跟的条件必须用[[ ]]双层中括号括起来或者[ ],然后用do和done。
#用脚本演示使用结束标记控制while循环实现猜1~10内的数
#!/bin/sh
echo "Please input the num (1~~10): "
read num
while [ $num != 4 ]
do
if [ $num -lt 4 ]
then
echo "Too small ,Try again.."
read num
elif [ $num -gt 4 ]
then
echo "Too big ,Try again.. "
read num
else
exit 0
fi
done
echo "Yes ,you are right !!"

你可能感兴趣的:(shell)