热门IT资讯网

bash基础命令参考

发表于:2024-11-25 作者:热门IT资讯网编辑
编辑最后更新 2024年11月25日,if语法:help ifif COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else COMMANDS; ] fi文件

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:参数左移


0