Linux Shell 编程入门:从脚本到自动化

2026-11-08 0 6

为什么值得学 Shell

Shell 是 Linux 上最直接的自动化工具。它不需要编译,写完就能跑;能把 grep、awk、sed、find 等命令串成流水线;也适合做部署、备份、日志清理这类重复任务。掌握 Shell 的关键不是背语法,而是理解“命令 + 组合 + 控制流”这套思路。

脚本的基本结构

一个可执行的 Shell 脚本通常以 shebang 开头:

!/usr/bin/env bash

set -euo pipefail

set -euo pipefail 是实用习惯:命令失败即退出、未定义变量报错、管道中任一环节失败都能被发现。保存为 .sh 后,用 chmod +x 赋权即可运行。

变量与引号

Shell 变量赋值等号两边不能有空格:

name=”backup”

dir=”/var/log”

echo “${dir}/${name}.tar.gz”

引号规则值得记牢:双引号允许变量展开,单引号保持字面量;"$var" 能避免空格和通配符带来的意外分词。处理路径、文件名时,给变量加双引号几乎是默认动作。

条件判断与测试

if 配合 test 或 [ ] 做判断:

if [ -f “$file” ]; then

echo “存在”

elif [ -d “$file” ]; then

echo “是目录”

fi

常用测试包括 -f 文件、-d 目录、-z 空字符串、-n 非空。数值比较用 -eq、-lt,字符串比较用 =、!=。需要正则匹配时用 [[ ]] 和 =~。

循环与命令组合

遍历文件用 for,按行读取用 while read:

while IFS= read -r line; do

echo “$line”

done < list.txt

IFS= 和 -r 能保留行首尾空白与反斜杠。命令替换用 $(...),管道用 |,逻辑组合用 && 与 ||。把 find ... -print0 与 xargs -0 搭配,可安全处理含空格的文件名。

函数与参数

函数让脚本可读性更好:

log() { echo “[$(date +%F’ ‘%T)] $*”; }

log “开始备份”

脚本参数用 $1、$2、$#、$@ 获取;"$@" 加引号能正确传递带空格的参数。退出码用 exit N 返回,便于被其他脚本或调度系统判断。

实践建议

先用 bash -n 做语法检查,再用 shellcheck 找常见陷阱;调试时加 set -x 观察执行过程。重要脚本先在测试环境跑通,并把 rm、mv 等破坏性操作加上确认或日志。养成写注释、统一日志格式、失败可重试的习惯,脚本才真正可维护。

看过这篇文章的人,推荐看以下内容

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

版权声明:所有的源码、软件和资料,不得使用于非法商业用途,不得违反国家法律,一切关于该资源商业行为与本站无关。

免费cms模板 建站百科 Linux Shell 编程入门:从脚本到自动化 https://www.mianfeicms.com/12391.html

我是签名

相关文章

猜你喜欢
发表评论
暂无评论