2016-08-19 1 views
2

Wie gehe ich mit Dateinamen um, die Sonderzeichen innerhalb eines RPM-Abschnitts% files enthalten?RPM% Dateien Abschnitt: wie mit Sonderzeichen in Dateinamen umgehen?

Ich baue ein RPM, aber ich habe ein paar Dateinamen, die Sonderzeichen enthalten. Ich bin nicht der Entwickler, also kontrolliere ich nicht die Dateinamen, die in das Quellcode-Repository eingecheckt werden.

Mein Beispiel% Dateien Abschnitt ist unten:

%files -f files.serviceX.list 
%defattr(-,serviceXuser,serviceXuser,-) 

Mein files.serviceX.list enthält:

%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 

Die einzige Abhilfe, die ich bisher gefunden habe ist das Verzeichnis aufzulisten, die enthält die Dateinamen mit Sonderzeichen in files.serviceX.list:

%config(noreplace) %attr(-,serviceXuser,serviceXuser) /etc/serviceX/serviceX.conf 
%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/ 

gibt es eine bessere wa y, um damit umzugehen?

+0

Ich sollte hinzufügen, dass die schlechten Dateinamen unter Angabe nicht funktioniert und rpmbuild noch beklagt: '% attr (-, serviceXuser, serviceXuser)„/ opt/serviceX/tests/# 1 escaping.sh "' – devteam

+0

hast du versucht, den Raum mit '\' zu umgehen? –

Antwort

0

können Sie einen Platzhalter verwenden und das Problem zu vermeiden:

%attr(-,serviceXuser,serviceXuser) /opt/serviceX/tests/*.sh 
Verwandte Themen