2011-09-14 114 views
0

我需要處理XML文件,然後複製發生在它複製非XML資源

輸入資源

-inputFolder 
    -1.xml 
    -1.jpg 
    -2.jpg 

內容1.XML的一些資源:

<links> 
    <link ref="1.jpg"/> 
    <link ref="2.jpg"/> 
</links> 

輸出資源

-outputFolder 
    -1.xml.out 
    -1.jpg 
    -2.jpg 

Co 1.xml.out的內容:

<links_new> 
    <link_new ref_new="1.jpg"/> 
    <link_new ref_new="2.jpg"/> 
</links_new> 

因此,我想複製1.jpg和2.jpg,可能嗎?

+0

「複製」是什麼意思?你想轉換XML並複製節點,還是想複製節點命名的文件?第一個可能是XSLT的工作,後者不是。 – musiKk

+0

「複製」是什麼意思?想要的輸出是什麼? –

+0

@empo更新開始主題 – Nawa

回答

1

您可以使用XML starlet command tool解析xml文件。

要複製1.JPG和2.JPG使用以下命令(適用於UNIX或Cygwin的):

xml sel -t -m "/links/link/@ref" -v '.' -o ';' 1.xml | xargs -d';' -I {} cp /input/path/{} /output/path/ 

xml sel -t -m "/links/link/@ref" -v '.' -o ';' 1.xml 

選擇所有的JPG文件,並通過「將它們分開的命令;」。

然後xargs解析輸入並將其傳遞給cp,它將文件複製到目標目錄。

+0

它不適合,只能使用xslt腳本 – Nawa