bash基础命令参考
if
语法:help if
if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else COMMANDS; ] fi
文件相关:
1、if [ -f file ]:是否问文件(不存在返回false)
2、if [ -d dir ]:是否为目录
3、if [ -e file ]:文件(目录)是否存在
4、if [ -r file ]:是否可读
5、if [ -w file ]:是否可写
6、if [ -x file ]:是否可执行
7、if [ -s file ]:是否为空文件
8、if [ -S file ]:是否为Socket文件
比较大小(整数变量)
1、if [ a -eq b ]:是否相等
2、if [ a -ne b ]:是否不等
3、if [ a -ge b ]:大于等于
4、if [ a -gt b ]:大于
5、if [ a -le b ]:小于等于
6、if [ a -lt b ]:小于
字符串比较
1、if [ a = b ]:是否相等
2、if [ a != b ]:是否不等
3、if [ -n str ]:非空
4、if [ -z str ]:为空
5、if [ str ]:非空,类似于-n
逻辑运算(尚未验证)
1、if [ ! exp ]:非
2、if [ ! -d $dir ]:目录不存在
3、if [ exp1 -a exp2 ]:and
4、if [ exp1 -o exp2 ]:or
for
语法:help for
for (( exp1; exp2; exp3 )); do COMMANDS; done
for NAME [in WORDS ... ] ; do COMMANDS; done
实例:
for (( i=0 ; i<=5 ; i++ )) ;
do echo $i ;
done
while
语法:
while COMMANDS; do COMMANDS; done
实例:不会用
while echo kkk ;
do echo hhh ;
done
参数问题
1、$?:
2、$#:返回参数个数,可用作判断
3、$@:返回所有参数,可用作加参
4、$n:返回第n个参数
5、$o:返回当前命令(脚本)名称
6、shift:参数左移