gpt4 book ai didi

batch-file - For 循环解析路径中带有空格的文件,命令提示符

转载 作者:行者123 更新时间:2023-12-02 21:11:51 25 4
gpt4 key购买 nike

有一个 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?] 选项?

最佳答案

要在for循环中使用dir扫描文件夹,您必须使用"delims=",因为默认的delims空格

for /f "delims=" %i in ('dir /s /b "D:\MyDirectory\filepath\*.xml"') do @( echo "%~i" )

我更新了示例,%i 现在用双引号引起来。因此,您的外部软件将被视为单个参数

如@aschipfl所述,您可以更改为“%~i”。请参阅 call/?for/? - 示例已更新

关于batch-file - For 循环解析路径中带有空格的文件,命令提示符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33026743/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com