01. 信号处理
Bash 可以捕获和处理系统信号。trap 命令用于定义信号处理函数。
bash
# 捕获退出
cleanup() {
echo "清理临时文件..."
rm -f /tmp/script_$$
}
trap cleanup EXIT
# 捕获 Ctrl+C
trap 'echo "收到 SIGINT"; exit 1' INT
# 忽略信号
trap '' INT # 忽略 Ctrl+C
trap - INT # 恢复默认处理02. 调试技巧
Bash 提供了多种调试手段:set 选项、trap 调试、PS4 自定义调试前缀。
bash
# set -x:打印每个命令
set -x
echo "调试模式"
set +x
# set -e:出错即退出
set -e
# set -u:使用未定义变量时报错
set -u
# 严格模式
set -euo pipefail知识测验
第 1/5 题正确 0
trap cleanup EXIT 的作用是什么?
下一节
下一节 实战脚本示例