mit Ich habe den folgenden Befehl ein:Proper Formatierung .csv, wenn xmlstarlet -f
cat PathFiles.txt | xargs xml sel -T -t -f -m /XML/Path -v "concat(value1,',',value2)" -n > test.csv
PathFiles.txt enthält XML-Dateien
COLORADO.xml
ALASKA.xml
CALIFORNIA.xml
WASHINGTON.xml
OREGON.xml
Es wird eine Ausgabe wie so:
#test.csv
COLORADO.xmlvalue1,value2
value1,value2
value1,value2
value1,value2
ALASKA.xmlvalue1,value2
value1,value2
value1,value2
value1,value2
...etc
Mein Problem ist COLORADO.xmlvalue1,value2
ALASKA.xmlvalue1,value2
wenn ich es brauche, um
COLORADO.xml
value1,value2
value1,value2
value1,value2
value1,value2
ALASKA.xml
value1,value2
value1,value2
value1,value2
value1,value2
Referenzierung zurück zum xml sel -f
zur Ausgabe wird der Dateiname, ich fühle mich wie ich eine neue Zeile benötigen (?) Zwischen dem, was ich trennen will .. Ich versuchte -f \n
aber das hat nicht funktioniert, dann fand ich heraus, dass Ich verwende bereits den Befehl newline -n
am Ende der xml sel
Befehl. Ist das möglich? Sollte ich mir vielleicht bei der Ausgabe nach .txt und der Verwendung von grep oder awk umsehen, um es zu trennen?
[Sehen Sie hier] http://stackoverflow.com/questions/14952640/xmlstarlet-removing-linefeed –