批处理脚本-findstr用结果覆盖csv文件

时间:2019-06-07 17:09:39

标签: batch-file

我正在使用批处理脚本。

我想过滤出sss_output.csv文件中包含特定字符串的行,并用结果覆盖该文件。

下面,我有以下代码:

@echo
cd C:\apache-jmeter-3.2\bin
jmeter.bat -n -t C:\apache-jmeter-3.2\bin\SessionManagement.jmx -l C:\apache-jmeter-3.2\bin\sss_output.csv
findstr /c:"WebDriver Sampler" sss_output.csv > sss_output.csv

运行该脚本后,将执行jmeter.bat语句并获得预期结果。但是,第二行未能筛选出包含字符串“ WebDriver Sampler”的行。

如果我在命令提示符下分别运行jmeter.bat和findstr行,它将正常工作。我在做什么错了?

1 个答案:

答案 0 :(得分:0)

Redirection在执行命令之前被处理,因此sss_output.csvfindstr甚至开始之前就被清空。

将输出写入临时文件,然后将其移至目标文件:

findstr /C:"WebDriver Sampler" > "%TEMP%\sss_output.tmp"
move /Y "%TEMP%\sss_output.tmp" "sss_output.csv" > nul