# 什么是脚本?
**脚本(Script)** 是一组由特定脚本语言编写的指令集合,用于自动化执行任务或控制应用程序的行为。与传统的编译型编程语言不同,脚本通常由解释器直接逐行执行,无需预先编译。
---
## 核心特点
1. **解释执行**
无需编译,通过解释器实时解析运行(如 Python、JavaScript)。
2. **轻量级**
代码简洁,适合快速实现小型功能或自动化流程。
3. **动态类型**
变量类型在运行时自动推断(如 Python 中 `num = 10` 无需声明类型)。
4. **跨平台性**
多数脚本语言支持多平台运行(如 Bash 脚本可在 Linux/macOS 中执行)。
---
## 常见应用场景
- **自动化任务**
批量重命名文件、定时备份数据(如 Shell/Python 脚本)。
- **Web 开发**
前端交互逻辑(JavaScript)、后端接口(Node.js)。
- **数据处理**
快速清洗/分析数据(Python 的 Pandas 库)。
- **系统管理**
配置服务器、安装软件(Bash/PowerShell 脚本)。
- **游戏开发**
控制游戏角色行为(如 Lua 脚本)。
---
## 脚本 vs 编译型语言
| 特性 | 脚本语言 | 编译型语言 |
|-------------------|------------------------|---------------------|
| 执行方式 | 解释器逐行执行 | 编译为二进制后执行 |
| 运行速度 | 较慢 | 较快 |
| 开发效率 | 高(快速迭代) | 较低(需编译调试) |
| 典型代表 | Python、Ruby、Bash | C++、Java、Go |
---
## 示例:Python 脚本
python
# 自动批量修改文件名
import os
folder = "./docs"
for count, filename in enumerate(os.listdir(folder)):
new_name = f"document_{count}.txt"
os.rename(os.path.join(folder, filename),
os.path.join(folder, new_name))
---
> **总结**:脚本是提高效率的利器,尤其适合重复性工作和小型项目,但复杂高性能场景仍需编译型语言。