RPM%files部分:如何处理文件名中的特殊字符?

时间:2016-08-19 13:09:59

标签: rpm rpmbuild rpm-spec

如何在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/

有没有更好的方法来解决这个问题?

1 个答案:

答案 0 :(得分:0)

您可以使用通配符并避免此问题:

%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/*.sh
相关问题