Linux shell中-eq怎么使用?shell脚本比较运算符有哪些

在 Linux Shell(特别是 Bash)中,-eq 是一个用于整数比较的测试运算符。

基本用途

-eq 用于判断两个整数是否相等。

linux shell 脚本 if条件判断语句简单用法讲解
加载中
linux shell 脚本 if条件判断语句简单用法讲解
  • 如果相等,返回退出状态码 0(表示“真”/成功)。
  • 如果不相等,返回退出状态码 1(表示“假”/失败)。

语法格式

✅ 推荐方式:使用 [[ ... ]] 或 [ ... ]

if [ $a -eq $b ]; then
    echo "a 等于 b"
fi

或更现代的写法(Bash 推荐):

if [[ $a -eq $b ]]; then
    echo "a 等于 b"
fi

❌ 不推荐:使用 算术上下文

Linux shell中-eq怎么使用?shell脚本比较运算符有哪些

在 中,直接使用 或 ,而不是 -eq:

if (( a == b )); then
    echo "a 等于 b"
fi

重要注意事项

⚠️ -eq 仅用于整数

-eq 只能比较整数,如果尝试比较浮点数(如 14),会报错:

$ [ 3.14 -eq 3.14 ]
bash: [: 3.14: integer expression expected

⚠️ 变量必须正确引用

如果变量可能为空,务必使用双引号包裹变量,避免语法错误:

# $a 为空,[ -eq 5 ] 会报错
[ "$a" -eq 5 ]  # ✅ 安全写法

⚠️ 与 的区别

Linux shell中-eq怎么使用?shell脚本比较运算符有哪些

  • -eq:用于整数相等比较。
  • 用于字符串相等比较(在 [ ] 或 [[ ]] 中)。
    [ "hello" == "hello" ]  # ✅ 字符串比较
    [ 5 -eq 5 ]             # ✅ 整数比较

其他常用整数比较运算符

Linux shell中-eq怎么使用?shell脚本比较运算符有哪些

运算符 含义 示例
-eq 等于 [ $a -eq $b ]
-ne 不等于 [ $a -ne $b ]
-gt 大于 [ $a -gt $b ]
-ge 大于等于 [ $a -ge $b ]
-lt 小于 [ $a -lt $b ]
-le 小于等于 [ $a -le $b ]

完整示例

#!/bin/bash
num1=10
num2=20
if [ $num1 -eq $num2 ]; then
    echo "num1 等于 num2"
else
    echo "num1 不等于 num2"
fi
# 输出: num1 不等于 num2
  • 使用 -eq 进行整数相等比较。
  • 始终在变量周围加双引号以处理空值。
  • 对于浮点数,请使用 bc、awk 或 配合浮点运算。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/487433.html

赞 (0)
服务器和客户端连接超时如何解决?如何排查网络连接故障
上一篇 2026年7月12日 15:13
为什么禁止访问?如何安全访问被屏蔽网站
下一篇 2026年7月12日 15:15

相关推荐

  • 如何制作一台迷你电脑,新手DIY组装详细教程步骤

    制作一台高性能且体积小巧的迷你电脑,核心在于精准的硬件兼容性匹配与高效的散热风道设计,这不仅是将硬件塞入小空间的过程,更是一场关于功耗、性能与噪音平衡的工程挑战,通过合理选择低功耗组件、定制紧凑型电源以及优化内部气流,用户完全可以以低于品牌机的成本,获得一台兼具颜值与生产力的定制化主机,核心硬件选型策略硬件选择……

    2026年2月22日
    24500
  • 国外业务创新数据业务化是什么?如何实现数据业务化转型

    在全球经济一体化与数字化转型的双重驱动下,企业出海已从简单的市场扩张转向深度的价值链重塑,核心结论在于:国外业务创新的成功与否,不再单纯依赖于商业模式的各种,而是取决于企业是否具备“数据业务化”的能力,即能否将海外海量、异构的数据资产,转化为可度量、可执行、可变现的业务闭环,从而构建跨越国界的核心竞争力,实现这……

    2026年3月2日
    14000
  • 安全性网络安全究竟如何保障?网络安全防护有哪些常见误区

    构建高安全性网络的核心在于建立“零信任”架构,通过身份验证、微隔离和持续监控的三重防线,将传统边界防御升级为以身份为中心的动态防护体系,在2026年的数字环境中,网络安全不再仅仅是安装一个杀毒软件那么简单,随着远程办公常态化、物联网设备爆发式增长以及人工智能技术的深度渗透,攻击面已经无限扩大,传统的“城墙式”防……

    2026年6月1日
    4300
  • Android自动化测试工具怎么选?哪些模块最实用

    Android自动化测试工具的核心在于通过脚本驱动UI交互,实现回归测试的高效闭环,其中Appium和UIAutomator2是目前业界最主流且兼容性最佳的选择,在移动应用开发周期不断压缩的背景下,手动测试已无法应对频繁的版本迭代,自动化测试不再是“锦上添花”的选项,而是保障软件质量的“基础设施”,对于开发团队……

    2026年6月2日
    5700
  • Apache安装教程详解?Apache安装失败解决方法

    Apache安装的核心在于下载官方二进制包、配置环境变量并启动服务,对于Windows用户推荐使用Win32二进制发行版,Linux用户则建议通过包管理器直接安装,整个过程无需编译源码,几分钟即可完成基础部署,在Web开发领域,Apache HTTP Server依然是构建稳定、高性能网站的基石,尽管Nginx……

    2026年6月12日
    3100
  • app跟网站的区别是什么,企业开发app还是网站好

    APP与网站在技术架构、用户体验及运营成本上存在本质差异,企业网站/APP后台作为管理核心,其架构设计直接决定了前端的响应速度与业务扩展能力,对于企业决策者而言,选择开发APP还是建设网站,或者两者并行,不应仅停留在界面展示的考量,更应深入到后台管理系统的逻辑复杂度与数据处理能力,核心结论在于:网站侧重于信息的……

    2026年4月3日
    9200
  • app客户端与服务器_FAQs是什么,app客户端常见问题解答

    APP客户端与服务器的交互稳定性直接决定了用户体验的优劣与应用的生命周期,核心结论在于:绝大多数APP客户端故障并非单一端的错误,而是网络链路、协议匹配、数据同步与服务器响应逻辑综合作用的结果, 解决这些问题需要建立“端云协同”的排查思维,从现象倒查本质,通过标准化的协议规范与容错机制,实现高效的问题定位与修复……

    2026年3月27日
    7900
  • 安全态势感知系统是什么,安全态势感知哪家好

    在数字化转型的浪潮中,网络安全已不再是单纯的防御战,而是一场关乎全局的动态博弈,核心结论在于:构建高效的安全态势感知体系,是实现从“被动防御”向“主动防御”跨越的关键基石,它能够帮助组织在复杂的网络环境中实现安全风险的“看见、看清、看懂”,从而将安全隐患消灭在萌芽状态, 这不仅是技术的升级,更是安全管理理念的革……

    2026年3月22日
    11300
  • 2核4G服务器能支持多少容器?,Docker容器数量极限

    2核4G服务器在合理配置下,大约能支撑10-20个轻量级容器实例,具体数量取决于容器应用的类型、资源限制及系统开销,容器资源消耗的核心因素CPU与内存分配每个容器都需要分配CPU和内存资源,操作系统内核和容器运行时(如Docker)本身会占用部分内存,通常需要预留1GB左右给系统,剩余约3GB内存可用于容器,对……

    2026年8月22日
    100
  • 谷歌vps服务器一年多少钱,租用价格贵不贵?

    谷歌VPS服务器一年的费用因配置和区域差异较大,入门级实例约需100-300美元/年,高配则可能超过1000美元/年,不过对于国内用户,网络延迟和合规性往往让本土持牌IDC成为更实际的选择,谷歌VPS官方定价解析谷歌云VPS(即Compute Engine)遵循按需付费模式,同时提供承诺使用折扣和预付费选项,费……

    2026年8月23日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注