上一篇
在学习 Linux Shell 脚本编程的过程中,Linux Shell运算符 是一个非常基础但又极其重要的知识点。无论你是刚接触 Linux 的新手,还是希望提升自动化脚本编写能力的中级用户,掌握这些运算符都能让你事半功倍。
Shell 运算符用于在脚本中执行数学计算、字符串比较、文件判断以及逻辑组合等操作。常见的 Shell 运算符包括:
+, -, *, /)-eq, -ne, -gt 等)=, !=, -z)-f, -d, -e)&&, ||, !)用于基本的数学计算。在 Bash 中,通常使用 $((...)) 或 let 来进行算术运算。
a=10b=3echo $((a + b)) # 输出 13echo $((a * b)) # 输出 30 常用于 if 判断中,注意:这些运算符只能用于整数!
-eq:等于(equal)-ne:不等于(not equal)-gt:大于(greater than)-lt:小于(less than)-ge:大于等于-le:小于等于num=5if [ $num -gt 3 ]; then echo "数字大于3"fi 用于比较或测试字符串内容:
= 或 ==:字符串相等!=:字符串不相等-z string:字符串长度为0(空)-n string:字符串长度非0(非空)str="hello"if [ -z "$str" ]; then echo "字符串为空"else echo "字符串非空"fi 这是 Shell脚本编程 中非常实用的功能,用于判断文件或目录的状态:
-f file:存在且是普通文件-d file:存在且是目录-e file:文件存在(任何类型)-r / -w / -x:文件可读/可写/可执行if [ -f "/etc/passwd" ]; then echo "passwd 文件存在且是普通文件"fi 用于组合多个条件,是实现复杂判断的关键。这也是 Shell逻辑运算 的核心。
&&:逻辑与(AND)||:逻辑或(OR)!:逻辑非(NOT)if [ -f "file.txt" ] && [ -r "file.txt" ]; then echo "文件存在且可读"fi 下面是一个完整的脚本,展示了如何结合多种 条件判断运算符 实现功能:
#!/bin/bashread -p "请输入一个文件路径: " filepathif [ -z "$filepath" ]; then echo "错误:未输入路径!"elif [ ! -e "$filepath" ]; then echo "错误:文件或目录不存在!"elif [ -f "$filepath" ] && [ -r "$filepath" ]; then echo "这是一个可读的普通文件。"elif [ -d "$filepath" ]; then echo "这是一个目录。"else echo "文件存在,但无法读取或类型未知。"fi [ ] 中,运算符两边必须有空格!例如 [ $a -eq $b ] 正确,[$a-eq$b] 错误。[ "$str" = "hello" ]。[[ ]],功能更强大且容错性更好,适合复杂场景。掌握 Linux Shell运算符 是编写高效、健壮 Shell 脚本的第一步。通过本文的学习,相信你已经对各类运算符有了清晰的理解。多加练习,你很快就能写出功能强大的自动化脚本!
本文由主机测评网于2025-11-28发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/2025111100.html