shell学习之if句练习
还是夜晚安静!,爬爬爬
……睡觉前还是先划个水
语法
关于fi 网上的同志萌都说是 if 反过来,认为是end if。
我觉得可以通过finally来记,因为这和其他语言里的finally很像。
条件句执行完毕不论如何都会执行。
if [ command ];then
符合条件1执行的语句1
elif [ command ];then
符合条件2执行的语句2
else
符合条件3执行的语句3
fi
执行最后一句
数值判断
-eq表示equal等于
-neq表示not equal不等于
-gt即greater than
-lt表示less than
简单测试数值比较
# !/bin/bash
# author
NUM1=1
NUM2=2
if (($NUM1 > $NUM2));then
echo "this is flase"
else
echo "this is True!"
fi
echo 23333
多试试加参数得方式
#!/bin/bash
#author h3zh1
Score=85
if [[ $Score -eq 85 ]];then
echo "$Score = 85!"
fi
if [[ $Score -gt 60 ]];then
echo "greate than 60"
elif [[ $Score -lt 100 ]];then
echo "less than 100"
else
echo "else else"
fi
if判断目录存不存在
-d用于判断目录存不存在
#!/bin/bash
#judge if dir exits
DIR=learn/
if [ ! -d $DIR ];then
mkdir -p $DIR
echo "not exit && mkdir success!"
else
echo "This dir $DIR exits , die…"
fi
判断文件存不存在
-f 判断文件是否存在
#!/bin/bash
#author h3zh1
FILES=learn/flag.txt
if [ ! -f $FILES ];then
echo "not exit $FILES"
echo "i am write flag{h3zh1} to file" >> $FILES
else
echo -e "----------------------"
cat $FILES
fi
运行两次,第一次创建文件,并写点东西
第二次文件已经存在就不需要写了
吐个槽最近一直写出来.swp文件,对这个文件泄露估计以后会
很深刻了。
详细的参数可以参考