使用xmlstarlet-f时正确格式化为.csv
我有以下命令:使用xmlstarlet-f时正确格式化为.csv,xml,linux,bash,shell,xmlstarlet,Xml,Linux,Bash,Shell,Xmlstarlet,我有以下命令: cat PathFiles.txt | xargs xml sel -T -t -f -m /XML/Path -v "concat(value1,',',value2)" -n > test.csv PathFiles.txt包含.xml文件 COLORADO.xml ALASKA.xml CALIFORNIA.xml WASHINGTON.xml OREGON.xml 它将这样输出: #test.csv COLORADO.xmlvalue1,value2 value
cat PathFiles.txt | xargs xml sel -T -t -f -m /XML/Path -v "concat(value1,',',value2)" -n > test.csv
PathFiles.txt包含.xml文件
COLORADO.xml
ALASKA.xml
CALIFORNIA.xml
WASHINGTON.xml
OREGON.xml
它将这样输出:
#test.csv
COLORADO.xmlvalue1,value2
value1,value2
value1,value2
value1,value2
ALASKA.xmlvalue1,value2
value1,value2
value1,value2
value1,value2
...etc
我的问题是科罗拉多.xmlvalue1,value2阿拉斯加.xmlvalue1,value2
当我需要的时候
COLORADO.xml
value1,value2
value1,value2
value1,value2
value1,value2
ALASKA.xml
value1,value2
value1,value2
value1,value2
value1,value2
回到xmlsel-f
是用来输出文件名的,我觉得我需要在我想要分开的东西之间换行(?)。。我尝试了-f\n
,但没有成功,然后我发现我已经在xml sel
命令的末尾使用了换行-n
命令。这可能吗?我是否应该考虑可能输出到.txt以及使用grep或awk将其分离出来
回到xmlsel-f
是用来输出文件名的,我觉得我需要在我想要分开的东西之间换行(?)。。我尝试了-f\n
,但没有成功,然后我发现我已经在xml sel
命令的末尾使用了换行-n
命令
只需在-f
之后添加另一个-n
命令:
< PathFiles.txt xargs xml sel -T -t -f -n -m /XML/Path -v "concat(value1,',',value2)" -n > test.csv
test.csv
[看这里]