Shell脚本定义
脚本名称:尽量做到观其名,明其意了解脚本大概是写什么的
首行内容:#!/bin/bash,#!又称为shebang,/bin/bash是告诉解释器用的哪一个shell。shell脚本第一行必须这样写
Shell脚本之条件测试分为三类
类型为:整数测试;
字符测试;
文件测试
测试的表达式为:
[ 表达式 ] :为命令测试;
[[ 表达式 ]]:为关键字测试
Test 表达式:使用test命令进行测试;
注意:[ 表达式 ]和[[ 表达式 ]]两边必须有空格,要不就报错误;
Shell中真表示为true,假则为false
True的值为:0
False的值为:1-255
命令之间的逻辑关系:
逻辑与&&:第一个条件为真时,第二个条件接着执行
逻辑或||:第一个条件为假时,第二个条件接着执行
整数测试:
-eq:测试两个整数是否相等,相等则为真
-ne:测试两个整数是否不等,不等则为真
-gt:测试一个书是否大于另一个数
-lt:测试一个书是否小于另一个数
-ge:大于或等于另一个数
-le:小于或等于另一个数
例如:
定义变量A=2,B=3, 测试$A与$B是否相等,三种方法都可以。
[ $A -eq $B ]
[[ $A -eq $B ]]
Test $A -eq $B
定义变量YOUTH=25,OLD=60
[ $YOUTH -lt $OLD ] &> /dev/null && echo ‘yes , your right.’ || echo ‘oh no,your bad’
Shell计算用法:
$[ ]:例A=1,B=2,$[$A+$B]
Let:例A=1,B=2,let $A+$B
Expr:例A=1,B=2,expr $A+$B
文件测试:
-e:判断某一文件是否存在
-f:判断某一文件是否是普通文件
-d:判断是否是目录
-r:判断当前用户是否对该文件有可读权限
-w:判断当前用户是否对该文件有可写权限
-x:判断当前用户是否对该文件有可执行权限
测试文件是否存在使用-e选项,三种方法都可以。
[ -e filename ]
[[ -efilename ]]
Test -e filename
Shell条件判断语句
- 单分支if语句
if 判断条件;then
Statement1
Statement2
…
fi - 双分支if语句
if 判断条件;then
Statement1
Statement2
…
else
Statement3
Statement4
…
fi - 多分支if语句
If 判断条件;then
Statement1
…
elif 判断条件;then
Statement2
…
else
Statement3
fi
例:定义变量FILE=/etc/profile
#!/bin/bash
#filename=filetest.sh
FILE=/etc/profile
if [ ! -e $FILE ];then #叹号表示取反;
echo “No such file.”
exit 2
fi
if [ -f $FILE ]; then
echo “common file.”
elif [-d $FILE ]; then
echo “directory”
else
echo “Not found”
fi
后期还会更改!!!
原文地址:https://blog.51cto.com/14132521/2395177