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

相关推荐

  • Linux秒表怎么用?,Linux秒表命令有哪些?

    Linux系统下实现秒表功能根本不需要额外安装软件,不管是命令行秒表还是脚本化计时,bash自身就能提供足够的支持, 本文围绕Linux秒表的多种实现方式,从基础命令到进阶脚本,帮你找到最适合自己场景的计时方案,Linux 秒表命令:date与time的实战用法date命令是最直接的秒表工具,在终端里执行以下命……

    2026年7月21日
    500
  • HostingViet越南VPS6折促销值得买吗?越南便宜VPS推荐

    HostingViet 凭借 6 折促销、150M 大带宽及不限流量的优势,成为 2026 年构建高性价比越南站点的理想选择,尤其适合对访问速度和成本敏感的用户,在 2026 年的数字营销环境中,服务器选址不再仅仅是技术决策,更是商业战略的一部分,对于面向东南亚市场的企业或个人开发者而言,越南因其人口红利和快速……

    2026年7月7日
    4800
  • 计算机信息系统安全等级如何划分?实施步骤详解

    计算机信息系统安全等级保护的实施步骤,核心在于遵循“定级、备案、建设整改、等级测评、监督检查”这五个标准化闭环流程,确保系统从规划到运维的全生命周期合规,在数字化浪潮席卷各行各业的今天,网络安全已不再是单纯的技术问题,而是关乎企业生存与法律合规的底线,许多IT负责人在面对“等保”二字时,往往感到头大如斗,不知从……

    2026年6月14日
    7000
  • 4核8G服务器能扛多少QPS,并发量多少合适?

    4核8G服务器在典型Web应用场景下,QPS(每秒查询数)承受能力通常在800到3000之间,具体数值取决于业务逻辑复杂度、代码质量、数据库配置和架构设计,如果只是处理静态资源或简单API转发,这个配置可以跑到5000以上;但若是复杂数据库查询或高CPU消耗的计算任务,可能连300都吃力,与其纠结一个固定数字……

    2026年8月17日
    1200
  • 国外cap云存储怎么用?国外云存储使用教程详解

    国外CAP云存储的高效使用,核心在于构建一套“极速连接、安全加密、智能分流”的标准化操作流程,用户不应仅将其视为简单的文件备份工具,而应将其作为跨地域数据协作与高性能分发的核心节点,通过优化网络环境、配置客户端参数以及建立合理的目录规则,能够最大限度发挥其高带宽优势,实现数据存取效率的质的飞跃,核心优势与前置准……

    2026年3月4日
    12600
  • Sharktech服务器1G带宽无限流量好用吗?美国免备案高防服务器推荐

    Sharktech鲨鱼机房凭借1Gbps独享带宽与无限流量优势,成为丹佛$49/月起、洛杉矶$59/月起的高性价比选择,特别适合对网络稳定性要求极高的建站与游戏部署场景,在服务器租赁市场,带宽焦虑是许多站长和开发者面临的头号难题,传统的按流量计费模式往往让人在深夜看着流量监控心惊胆战,而Sharktech提供的……

    2026年6月29日
    1800
  • Android持续集成怎么做?持续集成及持续部署流程

    Android持续集成与持续部署(CI/CD)的核心在于通过自动化流水线将代码提交、构建、测试到发布的流程无缝衔接,从而显著缩短交付周期并降低人为错误率,在2026年的移动开发语境下,Android项目的复杂度早已超越了简单的代码合并,随着模块化架构的普及和多端适配需求的增加,手动构建和测试不仅效率低下,更成为……

    2026年6月3日
    3000
  • ad10 3d封装网站如何操作?封装字段详细设置方法

    在Altium Designer 10中进行3D封装设计,核心在于通过“3D Body”属性导入STEP格式模型并正确设置坐标原点,这能直接解决封装预览模糊、装配干涉及生产数据错误等关键问题,做PCB设计的人都知道,2D原理图和版图只是基础,真正的工程落地往往卡在封装细节上,Altium Designer 10……

    2026年6月17日
    3200
  • Wishosting德国VPS带宽多大?250Mbps无限流量值得买吗

    Wishosting推出的德国1800GB大硬盘NAT VPS套餐,以7美元/月的极低门槛提供250Mbps带宽和无限月流量,是个人建站、数据存储及轻量级应用的高性价比选择,在云服务器市场日益内卷的2026年,对于预算有限但需求明确的中小开发者而言,寻找一款兼具大容量存储与稳定网络环境的VPS并非易事,Wish……

    2026年6月26日
    2010
  • 国外oss云存储怎么选?国外oss云存储哪家好用便宜

    选择国外OSS云存储服务的核心决策依据在于其全球化的基础设施布局、极高的数据持久性标准以及灵活的按需付费模式,这使其成为企业开展跨国业务、部署高性能应用及实施数据灾备的首选方案,相比传统本地存储或单一区域云服务,国外OSS云存储在访问速度、安全合规及扩展能力上具有不可替代的优势,全球节点布局与极速访问体验对于面……

    2026年3月1日
    11300

发表回复

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