Files
tools/oci/create_instance.sh
Wang Defa b0f1d5d600 fix: 修复 OCI 脚本中的 trap 变量作用域问题
## 问题描述

脚本执行完成后出现错误:
```
/dev/fd/63: line 1: fifo: unbound variable
```

## 根本原因

在 oci/create_instance.sh:364 行使用了:
```bash
trap 'rm -f "$fifo"' EXIT
```

单引号导致 `$fifo` 在 EXIT 时才展开,但此时 `fifo` 是 local 变量,
已超出作用域。由于 `set -u` 严格模式,访问未定义变量会报错。

## 修复方案

将单引号改为双引号:
```bash
trap "rm -f \"$fifo\"" EXIT
```

这样 `$fifo` 在 trap 设置时就会展开为实际的文件路径(如 /tmp/tmp.xxx),
trap 命令会记录具体路径而非变量名,避免作用域问题。

## 影响

-  修复 EXIT trap 的 unbound variable 错误
-  保持功能不变(临时 FIFO 文件仍会正确清理)
-  与 set -euo pipefail 严格模式兼容
2025-12-26 15:09:49 +08:00

14 KiB