💜 想真正擅长编程? 从一门课程开始,100% 免费

第1节:什么是Shell编程及环境搭建

一、知识讲解

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 脚本一般包括:

  1. Shebang 行(告诉系统用什么解释器执行)
Shell
#!/bin/bash
  1. 命令体
Shell
echo "This is my first shell script!"
  1. 文件权限
Shell
chmod +x script.sh
  1. 执行方式
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 脚本。