当前位置:首页 > 服务器技术 > 正文

Linux Shell运算符与数组详解(从零开始掌握Shell脚本核心技能)

在Linux系统管理和自动化脚本编写中,Shell脚本扮演着极其重要的角色。而要真正掌握Shell脚本,就必须理解两个核心概念:Shell运算符Shell数组。本文将用通俗易懂的语言,手把手带你从零开始学习这两个知识点,即使是完全没接触过Linux的小白也能轻松上手!

Linux Shell运算符与数组详解(从零开始掌握Shell脚本核心技能) Shell运算符 Shell数组操作 Shell脚本教程 Shell编程基础 第1张

一、Shell运算符:让脚本“会思考”

Shell运算符用于执行各种计算和逻辑判断。常见的运算符包括算术运算符、关系运算符、逻辑运算符和字符串运算符。

1. 算术运算符

用于基本数学计算。注意:在Shell中,算术运算通常需要使用 $((...))expr 命令。

# 加法示例a=10b=5echo $((a + b))  # 输出 15# 使用 expr(注意空格!)echo $(expr $a + $b)  # 输出 15

2. 关系运算符(比较数字)

常用于条件判断,如 if 语句中:

a=10b=20if [ $a -lt $b ]; then  echo "a 小于 b"fi

常用的关系运算符有:-eq(等于)、-ne(不等于)、-lt(小于)、-le(小于等于)、-gt(大于)、-ge(大于等于)。

3. 逻辑运算符

用于组合多个条件:

  • &&:逻辑与(AND)
  • ||:逻辑或(OR)
  • !:逻辑非(NOT)
if [ $a -gt 5 ] && [ $b -lt 30 ]; then  echo "条件满足"fi

二、Shell数组:批量处理数据的利器

Shell中的数组可以存储多个值,非常适合处理列表、日志、用户等批量数据。这是Shell编程基础中非常实用的一部分。

1. 定义数组

# 方法一:直接赋值fruits=("苹果" "香蕉" "橙子")# 方法二:逐个赋值nums[0]=10nums[1]=20nums[2]=30

2. 访问数组元素

echo ${fruits[0]}   # 输出:苹果echo ${fruits[1]}   # 输出:香蕉

3. 获取数组长度和所有元素

echo ${#fruits[@]}     # 输出数组长度:3echo ${fruits[@]}       # 输出所有元素:苹果 香蕉 橙子

4. 遍历数组(结合for循环)

for fruit in ${fruits[@]}; do  echo "我喜欢吃 $fruit"done

三、实战:运算符 + 数组 = 强大脚本

下面是一个综合示例,展示如何结合Shell数组操作和运算符来完成实际任务:

#!/bin/bash# 定义成绩数组scores=(85 92 78 96 88)# 计算总分和平均分total=0for score in ${scores[@]}; do  total=$((total + score))doneavg=$((total / ${#scores[@]}))echo "总分:$total"echo "平均分:$avg"# 判断是否优秀if [ $avg -ge 90 ]; then  echo "班级表现优秀!"elif [ $avg -ge 80 ]; then  echo "班级表现良好。"else  echo "需要继续努力。"fi

结语

通过本文的学习,你应该已经掌握了Linux Shell运算符Shell数组操作的基本用法。这些是编写高效、实用Shell脚本的基石。建议你多动手练习,尝试修改上面的代码,加深理解。记住,Shell脚本能力是每个Linux用户和运维工程师的必备技能,也是Shell脚本教程中最核心的内容之一。

现在,打开你的终端,创建一个.sh文件,开始你的Shell编程之旅吧!