我在“for /f”无法找到具有特定名称的文件时遇到了一些困难。当文件或路径包含空格时,此站点上的许多用户都会遇到此问题,但此处并非如此。简单示例,名为“test4.cmd”的批处理文件:
@echo off
set ln=%1
if exist 2013_10_23_Cal_Curve.txt echo The first file exists.
if exist ~temp1.txt echo The second file exists.
for /f "skip=%ln% tokens=2" %%a in (2013_10_23_Cal_Curve.txt) do echo Found the first file.
for /f "skip=%ln% tokens=2" %%a in (~temp1.txt) do echo Found the second file.
输出:
C:\Users\wnc7\Desktop\jmp_test_data>test4 1 第一个文件存在。 第二个文件存在。 系统找不到文件 2013_10_23_Cal_Curve.txt。 找到第二个文件。 找到第二个文件。 找到第二个文件。 *(第二个文件的预期输出继续......)*
其他命令如 findstr 可以找到该文件,但 for/f 找不到。然而 for/f 可以找到以相同格式写入的 ~temp1.txt,并且在同一目录中。
我试过“usebackq”并将文件名放在引号中,但无济于事。任何帮助表示赞赏。
麦克风