如何在rpm的%files部分中处理包含特殊字符的文件名?
我正在构建RPM,但我有一些包含特殊字符的文件名。我不是开发人员所以我不控制检查到源代码库的文件名。
我的示例%files部分如下:
%files -f files.serviceX.list
%defattr(-,serviceXuser,serviceXuser,-)
我的files.serviceX.list包含:
%config(noreplace) %attr(-,serviceXuser,serviceXuser) /etc/serviceX/serviceX.conf
%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/runtests.sh
%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/configtests.sh
%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/badinput.sh
%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/#1 escaping.sh
%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/#2 bad filenames.sh
到目前为止,我找到的唯一解决方法是使用files.serviceX.list中的特殊字符列出包含文件名的目录:
%config(noreplace) %attr(-,serviceXuser,serviceXuser) /etc/serviceX/serviceX.conf
%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/
有没有更好的方法来解决这个问题?
答案 0 :(得分:0)
您可以使用通配符并避免此问题:
%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/*.sh