DOS FIND and FINDSTR commands

Here are a few uses for the DOS FIND and FINDSTR commands which can be useful in the preparation of test data files. Since FIND and FINDSTR are included in all Windows versions, they can be used on most test PCs without having to install PERL or GREP.

To quickly count the number of lines in a text file e.g. FILENAME.TXT you can use this command.
find /c /v “” FILENAME.TXT

To output all the lines containing a the word “error” in a text file e.g. FILENAME.TXT use this command. (If you add /i after the /v it will ignore the case of the search term.
find /v “error” FILENAME.TXT


A new file called ERRORS.TXT containing only the lines with the word “error” can be created by piping the output to a new file.
find /v “error” FILENAME.TXT > ERRORS.TXT

The DOS FINDSTR command can be used to find a string within a text file. For example after running performance tests you may have output files containing lines of bad data and you might want to delete the bad data from the original test data to get a clean run in subsequent tests.

In the example below, the account numbers which create errors have been written to a text file called ERROR_ACCOUNTS.TXT they can be found in the original file using the following command.
findstr /V /G:ERROR_ACCOUNTS.TXT TESTDATA.TXT

A new file containing only the “good data” can be created by piping the output to a new file.
findstr /V /G:ERROR_ACCOUNTS.TXT TESTDATA.TXT > GOODTESTDATA.TXT

FINDSTR is very powerful and a full reference guide can be found by typing FINDSTR /? at the command line. This includes the ability to use regular expressions in the command syntax.