3、shell编程之运算符与条件判断

运算符

  • 基本语法:

(1)、"$((运算式))"或"$[运算式]"

(2)、expr m+n

注意:expr运算符间要有空格

(3)、expr m-n

(4)、expr \ * ,/,% 乘、除、取余

  • 实例:

(1)、计算(2+3)*4的值

vim demo.sh

#!/bin/bash

#第一种方式

RESULT1=$(((2+3)*4))

echo "result1=$RESULT1"

#第二种方式(推荐)

RESULT2=$[(2+3)*4)]

echo "result2=$RESULT2"

#第二种方式,使用expr

$TEMP=exprexpr 2 + 3

RESULT3=expr $TEMP \ *4

echo "result3=$RESULT3"

 

 

./demo.sh

(2)、请求出命令行的两个参数的和

#!/bin/bash

SUM=$[$1+$2]

echo "SUM=$SUM"

./demo.sh 10 8

 

条件判断

  • 基本语法:

[condition] (注意condition前后要有空格)

非空返回true,可使用$?验证(0为true,>1为false)

  • 实例:

[atguigu] 返回true

[] 返回false

[condition]&&echo OK ||echo notok 条件满足,执行后面语句

  • 判断语句:

常用判断条件

(1)、两个整数的比较

=字符串比较

-lt 小于

-le 小于等于

-eq 等于

-gt 大于

-ge 大于等于

-ne 不等于

(2)、按照文件权限进行判断

-r 有读权限

-w 有写权限

-x 有执行权限

(3)、按照文件类型进行判断

-f 文件存在且是常规文件

-e 文件存在

-d 文件存在且是一个目录

(4)、实例

a、"ok"是否等于"ok"

#!/bin/bash

if [ "ok"="ok" ]

then

echo "equal"

fi

b、23是否大于等于22

#!/bin/bash

if [ "23" -ge "22" ]

then

echo "大于"

fi

c、/root/install.log 目录中的文件是否存在

#!/bin/bash

if [ -e /root/install.log ]

then

echo "存在"

fi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @   拾柴慢热  阅读(66)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示