我想在将在部署 RPM 的地方运行的规范文件中嵌入的脚本上运行ShellCheck 。我有 .spec 片段,例如,
%setup -q
cat > ./example.sh << EOF
#!/bin/sh
echo "example"
EOF
除了挂钩,
%post
#!/bin/sh
echo "Hello"
有没有办法以编程方式提取这些 shell 片段来运行像 ShellCheck 这样的脚本分析工具?像也许rpmbuild --save-temps
或像这样的一些概念?还是每个脚本都需要被已知文本绑定,以便我可以使用流工具(grep
、、、awk
等sed
)?
我有大量我不想修改的规范文件。例如检查安全相关项目的脚本等,而无需解析规范文件。搜索bison + spec
给出了错误的概念,我认为您需要解析 RPM 宏和许多其他机器;或者语法比我想象的更简单?