使用FOR批处理将第二行文本设置为变量

use*_*489 3 text for-loop batch-file

我的桌面上有一个名为"1234.txt"的文本文件,它包含四行文本,如下所示:

Test
Test1
Test2
Test3
Run Code Online (Sandbox Code Playgroud)

我想使用FOR命令回显第二行(又名Test1).我用这个:

@echo off
for /f "skip=1" %%G IN (1234.txt) DO @echo %%G
pause
Run Code Online (Sandbox Code Playgroud)

然后它回来了

Test1
Test2
Test3
Press any key to continue . . .
Run Code Online (Sandbox Code Playgroud)

如何设置FOR命令读取第二行(Test1),而不是第三行和第四行?干杯

End*_*oro 9

试试这个:

@echo off
for /f "skip=1" %%G IN (1234.txt) DO if not defined line set "line=%%G"
echo %line%
pause
Run Code Online (Sandbox Code Playgroud)

其他例子:

for /f "tokens=1*delims=:" %%G in ('findstr /n "^" 1234.txt') do if %%G equ 2 echo %%H
Run Code Online (Sandbox Code Playgroud)

  • @Chris在第一个例子中,要获得整行而不是只得到第一个单词,添加`delims`参数,这样:`"delims == skip = 1"`这对我有用:-)(谢谢, @Endoro!) (2认同)