由于只是不熟悉语法,所以不写例子了。
1.if语句
if [条件];then
command
fi
if [条件];then
command1
else
command2
fi
if [条件];then
command1
elif [条件];then
command2
else
command3
fi
文件比较运算符:
-b 当file存在并且是块文件时返回真
-c 当file存在并且是字符文件时返回真
-d 当pathname存在并且是一个目录时返回真
-e 当pathname指定的文件或目录存在时返回真
-f 当file存在并且是正规文件时返回真
-L filename 如果 filename 为符号链接,则为真
-g 当由pathname指定的文件或目录存在并且设置了SGID位时返回为真
-k 当由pathname指定的文件或目录存在并且设置了“粘滞”位时返回真
-u 当由pathname指定的文件或目录存在并且设置了SUID位时返回真
-h 当file存在并且是符号链接文件时返回真,该选项在一些老系统上无效
-r 当由pathname指定的文件或目录存在并且可读时返回为真
-w 当由pathname指定的文件或目录存在并且可写时返回为真
-x 当由pathname指定的文件或目录存在并且可执行时返回真。目录的内容被访问必然是可执行的。
-s 当file存在且大小大于0时返回真
-p 当file存在并且是命令管道时返回为真
字符和数字比较运算符:
-eq 等于
-ne 不等于
-gt 大于
-lt 小于
-le 小于等于
-ge 大于等于
-z 空串
= 两个字符相等
!= 两个字符不等
-n 非空串
2.for循环
for x in 范围 #也可以用C风格for循环
do
command
done
3.while语句
while [条件]
do
command
done
4.until语句 #条件不成立进入循环,否则不进入
until 条件
do
command
done
5.case语句
case 变量 in
"变量1")
command1 ;; # ;; 在当前匹配模式需要执行的最后一条命令加,表示结束
" 变量2")
command2 ;;
.
.
" 变量n")
Commandn ;;
esac
6.函数
function a ( ) #不写function关键字也可以 使用函数时,直接写函数名就可以,像是使用命令一样
{
command
}
7.break 和continue :
break :终止循环
continue :退出本次循环,继续执行下一次循环