一、知识讲解
1. 什么是 Shell?
- Shell 是用户与操作系统之间的“命令解释器”。 你输入命令,它负责把命令传给系统执行并返回结果。
- 常见 Shell 类型:
bash(默认最常用)sh(标准 Shell)zsh(功能更强的交互 Shell)dash(轻量、速度快)
在 Linux 中,你输入的命令其实都在 Shell 环境中运行。
2. Shell 脚本是什么?
Shell 脚本就是一系列 Shell 命令的集合, 通过文件保存、一次性执行,从而实现自动化操作。
举例: 我们平时敲命令:
Shell
echo "Hello World"
ls -l
把这些命令写进一个文件 hello.sh,加上执行权限,就变成了一个可执行脚本。
3. 脚本运行方式
编写一个脚本 hello.sh:
Shell
#!/bin/bash
echo "Hello Shell!"
三种执行方式:
| 执行方式 | 示例 | 说明 |
|---|---|---|
| ① 直接用 bash 执行 | bash hello.sh |
不需要执行权限 |
| ② 使用 sh 命令 | sh hello.sh |
同上 |
| ③ 直接运行 | ./hello.sh |
需执行权限chmod +x hello.sh |
4. 环境准备
(1)Linux/Mac 用户
系统自带 Bash,无需额外安装。 可以使用终端直接执行命令。
(2)Windows 用户
推荐两种方式:
- ✅ 方式一:WSL(Windows Subsystem for Linux) 安装 Ubuntu 子系统:
powershell
wsl --install -d Ubuntu
安装完成后,即可使用 Bash。
- ✅ 方式二:虚拟机(VMware + Ubuntu / Centos) 适合想完整体验 Linux 桌面的同学。
5. 第一个脚本结构
一个 Shell 脚本一般包括:
- Shebang 行(告诉系统用什么解释器执行)
Shell
#!/bin/bash
- 命令体
Shell
echo "This is my first shell script!"
- 文件权限
Shell
chmod +x script.sh
- 执行方式
Shell
./script.sh
二、示例代码
示例1:Hello World 脚本
Shell
#!/bin/bash
# 文件名:hello.sh
# 功能:打印欢迎信息
echo "Hello, Shell World!"
echo "当前用户:$USER"
echo "当前时间:$(date)"
echo "当前路径:$(pwd)"
运行结果:
plain
Hello, Shell World!
当前用户:root
当前时间:Fri Oct 17 20:15:03 CST 2025
当前路径:/home/user
示例2:系统信息输出脚本
Shell
#!/bin/bash
# 文件名:sysinfo.sh
# 功能:输出系统的基本信息
echo "===== 系统信息 ====="
echo "主机名:$(hostname)"
echo "操作系统:$(uname -s)"
echo "内核版本:$(uname -r)"
echo "CPU 架构:$(uname -m)"
echo "当前登录用户:$USER"
三、课堂练习
练习1:编写个人信息脚本
创建一个脚本 me.sh,要求:
- 打印你的姓名、工作、爱好;
- 输出当前日期;
- 输出系统主机名。
运行效果示例:
plain
我的名字是:Tom
我的工作是:程序员
我的爱好是:看源码
今天是:2025年10月17日
当前主机名:ubuntu
练习2:查看系统环境信息
编写脚本 envinfo.sh,输出以下信息:
- 当前用户名
- 当前工作目录
- 当前 Shell 类型
- 当前登录终端(使用
$SHELL、$PWD、$USER、tty)
✅ 学习目标小结
- 理解 Shell 的作用与分类;
- 掌握脚本编写、执行、授权;
- 能独立写出第一个 Shell 脚本。