在FOR循环中使用什么分隔符来读取行?

sam*_*old 7 windows batch-file

我有一个包含以下行的txt文件

jfo3 93jfl
lvls 29fdj
nskd jfuwe
xlkw eklwe
Run Code Online (Sandbox Code Playgroud)

我正在尝试逐行读取文件,并使用它做一些事情.我应该使用什么分隔符?

我在这里使用的delim分别读取每个单词.

@echo off
setlocal EnableDelayedExpansion
for /f "delims=" %%x in (lines.txt) do (
    echo %%x
)
Run Code Online (Sandbox Code Playgroud)

Moe*_*tar 13

这对我来说是逐行的:

for /f "delims=" %x in (lines.txt) do echo %x
Run Code Online (Sandbox Code Playgroud)

  • @sameold:在批处理文件中,你需要使用`%%`而不是`%`.此答案中的变体可直接在命令行中使用. (4认同)
  • 为什么将““ delims =”`用于换行符分隔符?答:它将“ delims”的值设置为空,这意味着循环不使用任何字符(换行符除外)作为分隔符 (2认同)