Batch file 批量读取嵌套FOR循环中的文件
我试图访问一个文件并在嵌套循环中读取其内容,但内部循环无法访问该文件。。(分批) 以下是代码(整个脚本的一小部分): 问题是: 如果“%%b”等于“C:\Documents and settings\test\test.txt”,则内部循环将尝试访问“C:\Documents”(因为有空格)。如果我在“%%b”周围加上双引号,它将把它解析为字符串,而不是文件本身 我该怎么处理呢?这个文件是动态的,我不知道它的名字Batch file 批量读取嵌套FOR循环中的文件,batch-file,Batch File,我试图访问一个文件并在嵌套循环中读取其内容,但内部循环无法访问该文件。。(分批) 以下是代码(整个脚本的一小部分): 问题是: 如果“%%b”等于“C:\Documents and settings\test\test.txt”,则内部循环将尝试访问“C:\Documents”(因为有空格)。如果我在“%%b”周围加上双引号,它将把它解析为字符串,而不是文件本身 我该怎么处理呢?这个文件是动态的,我不知道它的名字 谢谢使用FOR/F读取名称中带有空格的文件时,需要使用USEBACKQ选项。USE
谢谢使用FOR/F读取名称中带有空格的文件时,需要使用USEBACKQ选项。USEBACKQ更改各种引号的语义。通常无引号表示文件,双引号表示字符串,单引号表示命令。USEBACKQ选项修改为无引号或双引号表示文件,单引号表示字符串,反引号表示命令。有关详细信息,请在命令提示符下键入有关的帮助
for %%b in (!directory!) do (
echo File used: %%b
for /f "usebackq delims= " %%c in ("%%b") do (
echo %%c
)
)
非常好用,谢谢!我不知道这个选项对我有帮助:)
for %%b in (!directory!) do (
echo File used: %%b
for /f "usebackq delims= " %%c in ("%%b") do (
echo %%c
)
)