GREPDIFF(1) | Man pages | GREPDIFF(1) |
grepdiff - show files modified by a diff containing a regex
grepdiff [[-n] | [--line-number]] [[-N] | [--number-files]] [[-p n] | [--strip-match=n]] [--strip=n] [--addprefix=PREFIX] [--addoldprefix=PREFIX] [--addnewprefix=PREFIX] [[-s] | [--status]] [[-i PATTERN] | [--include=PATTERN]] [[-I FILE] | [--include-from-file=FILE]] [[-x PATTERN] | [--exclude=PATTERN]] [[-X FILE] | [--exclude-from-file=FILE]] [[-# RANGE] | [--hunks=RANGE]] [--lines=RANGE] [[-FRANGE] | [--files=RANGE]] [--annotate] [--as-numbered-lines=WHEN] [--format=FORMAT] [--remove-timestamps] [[-v] | [--verbose]] [[-z] | [--decompress]] [[-E] | [--extended-regexp]] [[-H] | [--with-filename]] [[-h] | [--no-filename]] [--output-matching=WHAT] {[REGEX] | [-f FILE]} [file...]
grepdiff {[--help] | [--version] | [--list] | [--filter ...]}
For each file modified by a patch, if the patch hunk contains the REGEX then the file's name is printed.
The regular expression is treated as POSIX Basic Regular Expression syntax, unless the -E option is given in which case POSIX Extended Regular Expression syntax is used.
For example, to see the patches in my.patch which contain the regular expression “pf_gfp_mask”, use:
grepdiff pf_gfp_mask my.patch | \
xargs -rn1 filterdiff my.patch -i
You can use both unified and context format diffs with this program.
-n, --line-number
For a description of the output format see lsdiff(1).
-N, --number-files
-p n, --strip-match=n
--strip=n
--addprefix=PREFIX
--addoldprefix=PREFIX
--addnewprefix=PREFIX
-s
-i PATTERN, --include=PATTERN
-I FILE, --include-from-file=FILE
-x PATTERN --exclude=PATTERN
-X FILE, --exclude-from-file=FILE
-# RANGE, --hunks=RANGE
--lines=RANGE
-F=RANGE, --files=RANGE
--annotate
--as-numbered-lines=before|after
--format=unified|context
--remove-timestamps
-z, --decompress
-E, --extended-regexp
-H, --with-filename
-h, --no-filename
-f FILE, --file=FILE
--output-matching=hunk|file
--help
--version
--filter
--list
Tim Waugh <twaugh@redhat.com>
10 Feb 2011 | patchutils |