Linux Shell运算符详解(从零开始掌握Shell脚本中的运算与判断)

V5主机测评

在 Linux 系统中,Shell 脚本是自动化任务的重要工具。而要编写功能强大的 Shell 脚本,掌握 Linux Shell运算符 是必不可少的一步。无论你是刚接触 Linux 的小白,还是想巩固基础的开发者,本文都将带你一步步了解 Shell 中常用的各类运算符,并通过实例演示其用法。

Linux Shell运算符详解(从零开始掌握Shell脚本中的运算与判断)

一、什么是 Shell 运算符?

Shell 运算符用于在脚本中执行数学计算、字符串比较、文件测试以及逻辑判断等操作。常见的 Shell 运算符可分为以下几类:

  • 算术运算符(如 +、-、*、/)
  • 关系运算符(如 -eq、-ne、-gt)
  • 字符串运算符(如 =、!=、-z)
  • 文件测试运算符(如 -f、-d、-r)
  • 逻辑运算符(如 &&、||、!)

二、算术运算符

在 Shell 中进行数学运算,通常使用 ((...))$((...)) 结构。例如:

a=10b=3echo $((a + b))  # 输出 13echo $((a * b))  # 输出 30

注意:Shell 默认只支持整数运算,若需浮点数可借助 bc 命令。

三、关系运算符(用于整数比较)

关系运算符常用于 if 判断语句中,对两个整数进行比较。常见符号如下:

运算符 含义
-eq 等于(equal)
-ne 不等于(not equal)
-gt 大于(greater than)
-lt 小于(less than)

示例:

num=5if [ $num -gt 3 ]; then  echo "数字大于3"fi

四、字符串运算符

用于比较或测试字符串内容,常见用法包括:

str1="hello"str2="world"if [ "$str1" = "$str2" ]; then  echo "字符串相等"else  echo "字符串不相等"fi# 测试字符串是否为空if [ -z "$str1" ]; then  echo "str1 为空"else  echo "str1 不为空"fi

五、文件测试运算符

在自动化脚本中,经常需要判断文件是否存在、是否可读等。这就是 Shell文件测试运算符 的用武之地。

if [ -f "/etc/passwd" ]; then  echo "该文件存在且是普通文件"fiif [ -d "/home" ]; then  echo "/home 是一个目录"fi

六、逻辑运算符

逻辑运算符用于组合多个条件,实现更复杂的判断逻辑,是 Shell逻辑运算 的核心。

  • &&:逻辑“与”,前后条件都为真时整体为真
  • ||:逻辑“或”,任一条件为真即为真
  • !:逻辑“非”,取反
if [ -f "file.txt" ] && [ -r "file.txt" ]; then  echo "文件存在且可读"fi

七、总结

掌握 Linux Shell运算符 是编写高效 Shell 脚本的基础。通过合理使用算术、关系、字符串、文件和逻辑运算符,你可以轻松实现各种自动化任务。希望这篇教程能帮助你从零开始理解并应用这些关键概念,提升你的 Shell脚本编程 能力!

—— 学会运算符,让 Shell 脚本为你所用 ——

文章版权声明:除非注明,否则均为V5主机测评网_性价比VPS_性价比云服务器_免费独立服务器原创文章,转载或复制请以超链接形式并注明出处。