|
|
FIND
Search for a text string in a file & display all the lines
where it is found.
syntax FIND [/V] [/C] [/N] [/I] "string" [pathname(s)]
key
/V : Display all lines NOT containing the specified string.
/C : Count the number of lines containing the string.
/N : Display Line numbers.
/I : Ignore the case of characters when searching for the string.
"string" : The text string to find (must be in quotes).
[pathname] : A drive, file or files to search.
If a [pathname] is not specified, FIND will prompt for text input
or will accept text piped from another command.
(use CTRL-Z to end manual text input)
For example:
If names.txt contains the following:
Joe Bloggs, 123 Main St, Dunoon Arnold Jones, 127 Scotland Street, Edinburgh
To search for "Jones" in names.txt
FIND "Jones" names.txt
---------- NAMES.TXT Arnold Jones, 127 Scotland Street, Edinburgh
If you want to pipe a command into FIND use this syntax
TYPE names.txt | FIND "Jones"
You can also redirect like this
FIND /i "Jones" < names.txt >logfile.txt
To search a folder for files that contain a given search string
FOR %G IN (*.txt) do (find /n /i "SearchWord" "%G")
Bugs/Limitations
Although FIND can be used to scan large files, it will not detect any string
that is positioned more than 1070 characters along a single line (with no carriage
return) This makes it of limited use in searching binary or XML
file types.
"Instead of getting married again, I'm going to find a woman I don't like
and just give her a house." - Lewis
Grizzard
Related Commands:
FC - Compare files
FINDSTR - Search for strings in files
MUNGE - Find and Replace text within file(s)
ATTRIB - Find filename (rather than searching the
file contents)
Equivalent Linux BASH commands:
grep - Search file(s) for lines that match
a given pattern
gawk - Find and Replace text within file(s)
tr - Translate, squeeze, and/or delete characters