批处理文件 FOR 命令跳过行

批处理文件 FOR 命令跳过行

我需要一些有关批处理文件中 FOR 命令的帮助。我想要做的是读取文件“Test.txt”,只读取第三行,并将其转换为此批处理文件中可用的变量。这是我尝试过的方法,但没有成功。

for /f "skip=2 delims=" %%a in (Test.txt) do (
  set %%a=%LineThree%
)

当我运行该程序时,它显示“系统找不到文件 Test.txt。非常感谢大家的帮助。

答案1

  1. 该错误表明您的文件Test.txt不在运行脚本的同一目录中。
  2. 为了更好地从文本文件中抓取第三行,请尝试以下命令,它将快速运行任何大小的文件,而不必像你那样运行整个文件(你的操作会错误地……你实际上是在抓取每三行)。

    (对于(1,1,3)中的/l %%a,请设置/p LineThree=)<Test.txt

    回显 %LineThree%

正如另一条评论中提到的,您可能想尝试文件的完整路径,而不仅仅是文件名。

答案2

您的代码的主要问题是缺少在 (...)

它应该是:

for /f "skip=2 delims=" %%a in ('Test.txt') do (
  set %%a=%LineThree%
)

如果仍然不起作用,请尝试写入完整路径Test.txt(正如其他人所建议的)

相关内容