前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Shell编程自动化之数学运算与条件测试

Shell编程自动化之数学运算与条件测试

原创
作者头像
星如雨落
发布2024-01-12 21:39:08
1060
发布2024-01-12 21:39:08
举报
文章被收录于专栏:shell自动化shell自动化
一、Shell数学运算

1.Shell常见的算术运算符号

序号

算术运算符号

意义

1

+、-、*、/、%

加、减、乘、除、取余

2

**

幂运算

3

++、--

自增或自减

4

&&、||、!

与、或、非

5

==、!=

相等、不相等,==也可写成=

6

=、+=、-=、*=、/=、%=

赋值运算符,a+=1相等于a=a+1

2.Shell常用算术运算命令

序号

算术运算命令

意义

1

(())、let、$[]

用于整数运算

2

expr

可用于整数运算,还有其他功能

3

awk、bc

可用于整数运算,也可用于小数运算

3.实例测试:

二、Shell条件测试

1.条件测试常用的语法

序号

条件测试语

意义

1

test <测试表达式>

这是利用test命令进行条件测试表达式的方法,test命令和“<测试表达式>”之间至少有一个空格。

2

<测试表达式>

的边界和内容之间至少有一个空格。

2.test条件测试

常用文件类型、文件权限、文件比较、整数比较、字符串判断和逻辑判断。

序号

参数

意义

1

-e

判断文件(普通文件或目录文件)是否存在

2

-f

判断普通文件是否存在

3

-d

判断目录文件是否存在

4

-r

判断文件是否有读权限

5

-w

判断文件是否有写权限

6

-x

判断文件是否有执行权限

7

-nt

test file1 -nt file2,判断file1是否比file2新

8

-ot

test file1 -ot file2,判断file1是否比file2旧

9

-ef

test file1 -ef file2,判断file1和file2是否同一文件

10

-eq

判断两个整数是否相等

11

-ne

判断两个整数是否不相等

12

-gt

test n1 -gt n2,判断整数1是否大于整数2

13

-lt

test n1 -lt n2,判断整数1是否小于整数2

14

-ge

test n1 -ge n2,判断整数1是否大于等于整数2

15

-le

test n1 -le n2,判断整数1是否小于等于整数2

16

-z

判断字符串是否为0?若字符串为空字符串,则为真,否则反

17

-n

判断字符串是否为非0?若字符串为非空字符串,则为真,否则反

18

==

判断两个字符串是否相等

19

!=

判断两个字符串是否不相等

20

&&或-a

逻辑与,两端都为真,则为真

21

||或-o

逻辑或,两端其中一端为真,则为真

22

逻辑非,取反

3.中括号 的条件测试

在脚本中经常进行条件测试,用的最多的是中括号 ,功能与test一样,中括号与内容两边必须有空格,在条件测试中使用变量必须添加双引号,例如:[ -n "$str" ]


原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Shell数学运算
  • 二、Shell条件测试
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com