3、shell编程之运算符与条件判断
运算符
- 基本语法:
(1)、"$((运算式))"或"$[运算式]"
(2)、expr m+n
注意:expr运算符间要有空格
(3)、expr m-n
(4)、expr \ * ,/,% 乘、除、取余
- 实例:
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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构