目前,我有一個script是執行以下操作:刪除節點基於子節點值
- 看起來在一個特定的文件夾
- 解壓所有的* .zip文件
- 讀取特定CSV file那有四列(OLDID,使用oldName,NEWID NEWNAME)
- 查找遞歸地在文件夾中所有* .xml文件(sample.xml)
- 循環通過* .xml文件,創建拷貝(或iginal李明博&潛在修改BAK)
- 取代OLDID,使用oldName與NEWID,NEWNAME
- 如果修改,寫XML,刪除原始文件,移動李明博原始。
我的問題是這樣的。對於沒有替換的項目(例如,line 3 of csv),我需要刪除整個節點。
所以在我的XML,我有這樣的:
<choice id="8" isActive="yes">
<name><![CDATA[<font color='#0000FF' ><u>Mentoring Tools</u> </font>]]></name>
<url><![CDATA[http://olc.inside.domain.com/olc/apps/pro/DeepLinking/LoadAsset.cfm?coursename=mgmt_10_a03_bs_enus]]></url>
</choice>
當我走過這一點,我會在我的current loop摸他們一行行。所以我的問題是,有沒有辦法設置一個分隔符來讀取以替換字符串或刪除所述節點?或者,因爲替換工作,使用替換工具寫一個空行?
所以,
<choice id="8" isActive="yes">
<name><![CDATA[<font color='#0000FF' ><u>Mentoring Tools</u> </font>]]></name>
<url><![CDATA[http://olc.inside.domain.com/olc/apps/pro/DeepLinking/LoadAsset.cfm?coursename=mgmt_10_a03_bs_enus]]></url>
</choice>
成爲
<choice id="8" isActive="yes">
</choice>
如果一切正常,然後用另一個批處理刪除任何空<choice>
節點?
因此,隨着這個後來的思路,爲什麼這個變化>> "%BAKFILE%" echo.!LINE!
=>if not "%~3"=="" >> "%BAKFILE%" echo.!LINE!
不工作?
很抱歉讓您困惑。這是我的問題。我有一個空節點' '我需要的是空節點被完全刪除,如果這是結果輸出。 –