批量打印行,直到找到字符串

时间:2019-03-20 15:06:54

标签: batch-file findstr

我有一个批处理脚本,该脚本生成具有以下结构的文件(示例)

123|etc|etc
345|etc|etc
678|etc|etc

我希望我的脚本打印出在每一行中找到的内容,直到找到|,因此在此示例中,我希望它进行打印:

123

345

678,依此类推。

我用|尝试了findstr / V但它完全忽略了该行(如命令所示)

任何想法我该如何解决?

1 个答案:

答案 0 :(得分:1)

@echo off
for /f "usebackq tokens=1 delims=|" %%a in ("test.txt") do (
      echo %%a )

      pause

这正在循环处理与批处理脚本相同目录中的文件(test.txt)。我告诉它只使用1个令牌和管道分隔符,然后我们只打印出%% a,它具有您的第一列数据的值。