上一篇
在编写 Linux Shell 脚本时,经常需要根据某些条件来决定程序的执行流程。这就需要用到 比较运算符。本文将用通俗易懂的方式,带你全面了解 Shell 中的各类比较运算符,无论你是刚接触 Linux 的小白,还是有一定经验的用户,都能轻松掌握!
Shell 比较运算符用于在条件语句(如 if)中对两个值进行比较,返回“真”或“假”的结果。根据比较对象的不同,可分为两大类:
在 Shell 中,数值比较不能使用常见的 >、< 等符号(这些在 Shell 中有特殊含义),而是使用以下专用符号:
| 运算符 | 含义 | 示例 |
|---|---|---|
-eq | 等于(equal) | [ $a -eq $b ] |
-ne | 不等于(not equal) | [ $a -ne $b ] |
-gt | 大于(greater than) | [ $a -gt $b ] |
-lt | 小于(less than) | [ $a -lt $b ] |
-ge | 大于等于(greater or equal) | [ $a -ge $b ] |
-le | 小于等于(less or equal) | [ $a -le $b ] |
#!/bin/basha=10b=20if [ $a -lt $b ]; then echo "$a 小于 $b"fi# 输出:10 小于 20 字符串比较常用于判断两个文本是否相同、是否为空等。注意:字符串必须用双引号括起来以避免空格等问题。
| 运算符 | 含义 | 示例 |
|---|---|---|
= 或 == | 等于 | [ "$str1" = "$str2" ] |
!= | 不等于 | [ "$str1" != "$str2" ] |
-z | 字符串长度为0(空) | [ -z "$str" ] |
-n | 字符串长度不为0(非空) | [ -n "$str" ] |
#!/bin/bashname="Linux"if [ -n "$name" ]; then echo "变量 name 不为空"fiif [ "$name" = "Linux" ]; then echo "欢迎使用 Linux!"fi [ ] 内部左右必须有空格,例如 [ $a -eq $b ] 正确,而 [$a -eq $b] 会报错。> 或 <,它们会被 Shell 解释为重定向符号。通过本文,你已经掌握了 Linux Shell 比较运算符 的基本用法,包括 Shell 脚本条件判断、Shell 字符串比较 和 Shell 数值比较 的核心技巧。这些知识是编写自动化脚本、系统管理任务的基础。
多动手实践,你会发现 Shell 脚本其实并不难!快去写一个自己的判断脚本试试吧!
本文由主机测评网于2025-11-28发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/2025111011.html