chmod +x 文件名.sh
添加执行权限,最后通过./文件名.sh
运行脚本。创建脚本的完整流程
选择文本编辑器
推荐使用内置编辑器(终端操作):
nano hello.sh # 使用nano创建文件 vim hello.sh # 使用vim创建文件
编写脚本内容
脚本首行必须指定解释器(Shebang),
#!/bin/bash # 声明使用Bash解释器 echo "Hello World!" # 打印文本
保存文件并退出编辑器:
- nano:按
Ctrl+X
→ 输入Y
→ 回车 - vim:按
Esc
→ 输入:wq
→ 回车
赋予执行权限
Linux默认禁止直接运行脚本,需添加权限:
chmod +x hello.sh # 为所有用户添加执行权
可选精细化授权:
chmod 700 hello.sh # 仅所有者可读/写/执行
运行脚本
三种执行方式:
./hello.sh # 当前目录下执行 bash hello.sh # 指定解释器运行 sh hello.sh # 使用sh解释器(兼容模式)
实用脚本示例
自动化备份脚本
#!/bin/bash backup_dir="/home/user/backups" tar -czf $backup_dir/backup_$(date +%F).tar.gz /path/to/data echo "备份已完成!保存位置: $backup_dir"
系统监控脚本
#!/bin/bash cpu_usage=$(top -bn1 | grep "Cpu(s)" | awk '{print $2}') mem_free=$(free -m | awk 'NR==2{print $4}') echo "CPU使用率: ${cpu_usage}% | 剩余内存: ${mem_free}MB"
关键注意事项
-
解释器选择
#!/bin/bash
:标准Bash(推荐)#!/bin/sh
:POSIX兼容模式(受限功能)#!/usr/bin/python3
:Python脚本
-
调试技巧
bash -x script.sh # 逐行显示执行过程
-
路径问题
- 使用绝对路径(如
/usr/local/bin
)避免执行失败 - 将常用脚本加入
PATH
:cp hello.sh /usr/local/bin/ # 复制到系统路径
- 使用绝对路径(如
-
安全规范
- 避免使用
root
权限运行未知脚本 - 复杂脚本添加注释说明:
# 描述:此脚本用于清理日志 # 作者:YourName # 日期:2025-10-01
- 避免使用
常见问题解决
-
错误:Permission denied
执行chmod +x 文件名
添加权限 -
错误:Command not found
检查脚本中的命令路径或安装缺失软件包 -
错误:Bad interpreter
确认Shebang路径正确:which bash
查看解释器位置
通过以上步骤,您已掌握Linux脚本的创建、授权与执行方法,实践建议:
- 从简单任务开始(如文件整理)
- 逐步添加条件判断(
if
)和循环(for
) - 使用
cron
定时运行脚本
引用说明: 基于Linux标准文档(man7.org)、Bash参考手册(gnu.org)及Unix/Linux系统管理最佳实践,技术细节遵循POSIX标准,适用于Ubuntu/CentOS等主流发行版。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/17642.html