🐚 Shell 学习总览

2026.10.08

来源:菜鸟教程 Shell 教程 定位:Linux 命令行的「胶水语言」——把零散命令串成自动化脚本。 学习方式:配合 深度学习-七天冲刺计划 并行推进;Shell 是「工具课」,学到哪用到哪。

🎯 一句话理解 Shell

Shell 是你和 Linux 内核之间的翻译官。你敲一句 ls,它去内核那儿取目录列表再拿回来给你。 写脚本 = 把这串「翻译」写进一个文件,让它自动帮你说。

🗺 知识地图(共 13 节)

# 章节 核心 难度 笔记
1 Shell 基础与第一个脚本 #!/bin/bash、执行方式 🟢 01-Shell基础与第一个脚本
2 变量与字符串 赋值、${}、单双引号、字符串操作 🟢 02-变量与字符串
3 数组与注释 索引/关联数组、多行注释 🟢 03-数组与注释
4 传递参数 $0 $1 $# $* $@ $? $$ 🟢 04-传递参数
5 运算符 算术/关系/布尔/逻辑/字符串/文件测试 🟡 05-运算符
6 echo 与 printf 输出、转义、格式化、颜色 🟢 06-echo与printf
7 test 命令 [ ] 与 <span class="deadlink"></span>、条件测试 🟡 07-test命令与条件测试
8 流程控制 if / for / while / until / case 🟡 08-流程控制
9 函数 定义、参数、return、$? 🟡 09-函数
10 输入输出重定向 > >> < <<、2>&1、/dev/null 🔴 10-输入输出重定向
11 文件包含 source 与 . 🟢 11-文件包含
12 实战脚本合集 综合范例 🔴 12-实战脚本合集
13 易错点速查 空格、引号、$? 陷阱 🔴 13-Shell易错点速查

🔥 先记住这 5 条(Shell 反直觉之处)

  1. 赋值不能有空格:a=1 ✅ | a = 1 ❌
  2. 方括号里必须有空格:[ $a == $b ] ✅ | [$a==$b] ❌
  3. $? 里 0 是真(成功),非 0 是假 —— 跟 C 语言正好相反
  4. 单引号不解析变量,双引号才解析:'$a' 原样输出 | "$a" 输出变量的值
  5. return 只能返回 0~255 的整数,要返回字符串/大数得用 echo + $( )

🔗 关联

首页|深度学习-七天冲刺计划|来源:菜鸟教程 Shell|Shell 在线运行