GitHub Actions 的 shell 关键字:意料之外的灵活性
2025-04-08
GitHub Actions 中的 shell 关键字允许自定义运行块的 shell,但这比文档描述的更灵活。它不仅支持 bash、pwsh 等预定义 shell,还支持系统 $PATH 中的任何可执行文件。这意味着你可以使用 C 编译器运行 C 代码,甚至动态修改 $GITHUB_PATH 来改变 shell 的行为。虽然这带来了灵活性,但也增加了安全风险,因为文件写入可能暗示执行。这与 GitHub 对“已知”shell 值进行 $PATH 查找的做法形成对比,这种做法出乎意料。
开发