温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎样编写linux shell脚本

发布时间:2026-10-01 14:16:20 来源:亿速云 阅读:82 作者:小樊 栏目:系统运维

编写 Linux Shell 脚本其实并不难,下面我从基础概念 → 编写步骤 → 示例 → 常用技巧逐步讲解,适合初学者。


一、什么是 Shell 脚本

Shell 脚本是一个文本文件,里面按顺序存放多条 Linux 命令,由 Shell 解释器(如 bash)执行。

常见 Shell:

  • bash(最常用)
  • sh
  • zsh

二、第一个 Shell 脚本

1️⃣ 创建脚本文件

touch hello.sh

2️⃣ 编写内容

#!/bin/bash
# 这是注释
echo "Hello, Linux!"

说明:

  • #!/bin/bash:指定解释器(必须放第一行)
  • # 开头是注释

三、运行 Shell 脚本的三种方式

方式一:赋予执行权限

chmod +x hello.sh
./hello.sh

方式二:直接用 bash 执行

bash hello.sh

方式三:source 执行(在当前 shell 环境)

source hello.sh

四、变量

定义和使用

name="Tom"
echo "Hello $name"

⚠️ 注意:

  • = 两边不能有空格
  • 使用变量要加 $

只读变量

readonly pi=3.14

删除变量

unset name

五、输入与参数

读取用户输入

read -p "请输入你的名字: " name
echo "你好, $name"

脚本参数

#!/bin/bash
echo "脚本名: $0"
echo "第一个参数: $1"
echo "第二个参数: $2"
echo "参数个数: $#"

执行:

./test.sh a b c

六、条件判断

if 语句

if [ $1 -gt 10 ]; then
    echo "大于10"
else
    echo "小于等于10"
fi

常见判断:

  • -eq 等于
  • -ne 不等于
  • -gt 大于
  • -lt 小于
  • -f 文件存在
  • -d 目录存在

七、循环

for 循环

for i in 1 2 3 4 5
do
    echo "数字: $i"
done

while 循环

count=1
while [ $count -le 5 ]
do
    echo $count
    count=$((count+1))
done

八、函数

say_hello() {
    echo "Hello $1"
}

say_hello "Tom"

九、实用示例:自动备份

#!/bin/bash
backup_dir="/backup"
mkdir -p $backup_dir
cp -r /home/user/data $backup_dir/data_$(date +%Y%m%d)
echo "备份完成"

十、调试脚本

bash -x script.sh

十一、学习建议

✅ 从简单命令开始
✅ 多用 echo 调试
✅ 看系统脚本(/etc/init.d/)
✅ 熟悉 man bash


如果你愿意,我可以:

  • 给你具体场景脚本(如日志分析、定时任务)
  • 帮你逐行解释现有脚本
  • 教你写 crontab 定时 shell

你想从哪一部分深入?

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手