【发布时间】:2015-10-08 22:07:16
【问题描述】:
有一个 Windows 命令提示行:
for /F %i in ('dir /s /b D:\MyDirectory\filepath\File.xml') do (C:\progra~1\xmlstarlet\xml.exe ed --inplace -d "//xmlTag[data/url[contains(text(),'shop.companyname')]]" %i)
100 多个目录中的一个在路径中有空格,并且该行在该目录上失败。必须保留名称。
尝试将delims 选项更改为^n,但在多个目录上都失败了。
也试过%~dp0但不理解语法,还有"%~dp0\File.xml",这让我“找不到指定的文件”。
如何让 Windows 用空格解析该行?有delims=[not space?] 选项吗?
【问题讨论】:
-
宁愿不搜索和替换空格,除非这是唯一的方法。
标签: batch-file for-loop xmlstarlet