Shell 脚本用于自动化任务、管理系统和处理文件,Bash 是最常见的 Shell 解释器。
创建脚本
# 创建脚本文件
touch myscript.sh
# 添加 shebang 和内容
#!/bin/bash
echo "Hello, World!"
# 赋予执行权限
chmod +x myscript.sh
# 运行
./myscript.sh基本语法
变量
NAME="Alice" # 定义变量(等号两边不能有空格)
echo "Hello, $NAME!" # 使用变量条件判断
if [ "$NAME" == "Alice" ]; then
echo "Welcome, Alice!"
else
echo "Who are you?"
fi循环
# for 循环
for i in {1..5}; do
echo "Number $i"
done
# while 循环
count=1
while [ $count -le 5 ]; do
echo "Count $count"
((count++))
done函数
greet() {
echo "Hello, $1!" # $1 是第一个参数
}
greet "Bob"常用命令
| 命令 | 说明 |
|---|---|
ls | 列出文件 |
mkdir | 创建目录 |
rm | 删除文件 |
cat | 显示文件内容 |
grep | 查找字符串 |
sort | 排序 |
管道与重定向
echo "Hello" > output.txt # 重定向(覆盖)
echo "World" >> output.txt # 追加
ls | grep "pattern" # 管道脚本参数
echo "Script: $0" # 脚本名
echo "First arg: $1" # 第一个参数
echo "All args: $@" # 所有参数
echo "Arg count: $#" # 参数个数完整示例
#!/bin/bash
echo "Enter your name:"
read NAME
echo "Hello, $NAME!"
if [ "$NAME" == "Alice" ]; then
echo "Welcome back!"
fi
for i in {1..3}; do
echo "Loop $i"
done