shell常见命令总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell常见命令总结相关的知识,希望对你有一定的参考价值。

1.1. 各种判断

1.1.1. 字符串判断

str1 = str2      当两个串有相同内容、长度时为真

str1 != str2      当串str1str2不等时为真

-n str1        当串的长度大于0时为真(串非空)

-z str1        当串的长度为0时为真(空串)

str1           当串str1为非空时为真

1.1.2. 数字的判断

int1 -eq int2    两数相等为真

int1 -ne int2    两数不等为真

int1 -gt int2    int1大于int2为真

int1 -ge int2    int1大于等于int2为真

int1 -lt int2    int1小于int2为真

int1 -le int2    int1小于等于int2为真

1.1.3. 文件的判断

-r file     用户可读为真

-w file     用户可写为真

-x file     用户可执行为真

-f file     文件为正规文件为真

-d file     文件为目录为真

-c file     文件为字符特殊文件为真

-b file     文件为块特殊文件为真

-s file     文件大小非0时为真

-t file     当文件描述符(默认为1)指定的设备为终端时为真

1.1.4. 复杂逻辑判断

-a         与

-o        或

!        非

1.2. 条件判断

if [ $a -eq $b ]

then

echo 111

elif [  -f $path  ]

echo 222

fi

在条件表达式中,等号左右可以有空格。但是在表达式外面的赋值语句中,shell是不能有空格的。

shell中的等号也很有意思,在判断语句的里面时表示判断,而在其他地方时就表示赋值了。

中括号里面的语句,离左右括号必须要有一个空格,不然判断语句不会生效。

1.3. 循环语句

for i in list

do

echo 111

done

还可以这样在in后面列出来要遍历的数据:for in $1 $2 $3

while [ $a != 0 ]

do

echo 222

done

  循环语句中,遇上return则退出当前函数,返回值供函数的返回值调用。continue则退出本次循环,执行下一次循环。exit则是退出当前函数,返回函数的执行结果,供$?调用。

以上是关于shell常见命令总结的主要内容,如果未能解决你的问题,请参考以下文章

shell常见命令总结

shell常见命令总结

shell常见命令总结

从入门到小白的shell命令总结

shell脚本if条件总结

Linux基础命令和原理总结