findstr is a useful command in bat file.

 

for instances:

 

findstr /NI ^error.*: %DEBUG_LOG% 1>nul 2>&1

 

It matches error info via regular expression, if matched, build system will thought the build encountered  a error, but sometimes, some invalid 'error' words will also be matched:

 

 Invalid Errors:

1)      \Constants\ErrorID.cs                    a filename contains 'error' word.

2)      /errorreport:prompt                      a parameter contains 'error' word.

 

Valid Errors:

1)      CSC : error CS2001: Source file user.cs is not exist.

2)      test.cs(25,20): error CS1928: 'User' does not contain a definition for 'FindUser'

 

 

After the command be changed to below, just match the valid errors and ignore invalid errors

findstr /NI /C:": error " %DEBUG_LOG% 1>nul 2>&1

 

why we need to use /C?

Use spaces to separate multiple search strings unless the argument is prefixed
with /C.  For example, 'FINDSTR "hello there" x.y' searches for "hello" or
"there" in file x.y.  'FINDSTR /C:"hello there" x.y' searches for
"hello there" in file x.y.

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-02-07
  • 2021-12-26
  • 2021-12-12
  • 2022-12-23
  • 2021-12-12
  • 2022-12-23
猜你喜欢
  • 2021-11-07
  • 2021-09-28
  • 2021-10-31
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-23
相关资源
相似解决方案