码迷,mamicode.com
首页 > 系统相关 > 详细

shell常见命令总结(一)

时间:2017-12-15 23:39:27      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:空格   描述   有一个   中括号   逻辑   执行   内容   字符串   turn   

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常见命令总结(一)

标签:空格   描述   有一个   中括号   逻辑   执行   内容   字符串   turn   

原文地址:http://www.cnblogs.com/yahutiaotiao/p/8045024.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!