table of contents
other versions
- jessie 1.3.1-1
- jessie-backports 2.0-1~bpo8+1
- stretch 2.0-1
- testing 2.0.1-1
- unstable 2.1.2-1
PDFGREP(1) | Pdfgrep Manual | PDFGREP(1) |
NAME¶
pdfgrep - search pdf files for a regular expressionSYNOPSIS¶
pdfgrep [OPTION...] PATTERN [FILE...]DESCRIPTION¶
Search for PATTERN in each FILE. PATTERN is an extended regular expression. pdfgrep works much like grep, with one distinction: It operates on pages and not on lines.OPTIONS¶
-i, --ignore-caseIgnore case distinctions in both the PATTERN and
the input files.
-F, --fixed-strings
Interpret PATTERN as a list of fixed strings
separated by newlines, any of which is to be matched.
--cache
Use a cache for the rendered text to speed up the
operation on large files.
-P, --perl-regexp
Interpret PATTERN as a Perl compatible regular
expression (PCRE). See pcresyntax(3) for a quick overview.
-H, --with-filename
Print the file name for each match. This is the default
setting when there is more than one file to search.
-h, --no-filename
Suppress the prefixing of file name on output. This is
the default setting when there is only one file to search.
-n, --page-number
Prefix each match with the number of the page where it
was found.
-c, --count
Suppress normal output. Instead print the number of
matches for each input file. Note that unlike grep, multiple matches on the
same page will be counted individually.
-p, --page-count
Like -c, but prints the number of matches per
page. Implies -n.
--color WHEN
Surround file names, page numbers and matched text with
escape sequences to display them in color on the terminal. (The default
setting is auto). WHEN can be:
always
-o, --only-matching
Always use colors, even when stdout is not a
terminal.
never
Do not use colors.
auto
Use colors only when stdout is a terminal.
Print only the matched part of a line without any
surrounding context.
-r, --recursive
Recursively search all files (restricted by
--include and --exclude) under each directory, following
symlinks only if they are on the command line.
-R, --dereference-recursive
Same as -r, but follows all symlinks.
-A NUM, --after-context=NUM
Print NUM lines of context after matching lines.
Contiguous groups of matches are separated by a line containing --.
With -o, this option has no effect.
-B NUM, --before-context=NUM
Print NUM lines of context before matching lines.
Contiguous groups of matches are separated by a line containing --.
With -o, this option has no effect.
-C NUM, --context=NUM
Print NUM lines of context before and after
matching lines. Contiguous groups of matches are separated by a line
containing --. With -o, this option has no effect.
--exclude=GLOB
Skip files whose base name matches GLOB. See
glob(7) for wildcards you can use. You can use this option multiple
times to exclude more patterns. It takes precedence over --include.
Note, that in- and excludes apply only to files found via --recursive
and not to the argument list.
--include=GLOB
Only search files whose base name matches GLOB.
See --exclude for details. The default is *.pdf.
--password=PASSWORD
Use PASSWORD to decrypt the PDF-files. Can be specified
multiple times; all passwords will be tried on all PDFs. Note that this
password will show up in your command history and the output of ps(1).
So please do not use this if the security of PASSWORD is
important.
-m, --max-count NUM
Stop reading a file after NUM matches. When the -c
or --count option is also used, pdfgrep does not output a count greater than
NUM.
-Z, --null
Output a null byte (called NUL in ASCII and '\0'
in C) instead of the colon that usually separates a filename from the rest of
the line. This option makes the output unambiguous in the presence of colons,
spaces or newlines in the filename. It can be used in conjunction with
commands such as xargs -0 or perl -0.
--match-prefix-separator SEP
Changes the colon used to separate filename, line number
and text in the output to SEP, which can be an arbitrary string. This
is useful when filenames contain colons, but only for interactive usage. For
scripting, --null should be used.
--debug
Enable debug output. Note: Due to limitations of
poppler before version 0.30.0, some debug output is also printed without
--debug when using such a poppler version.
--warn-empty
Print a warning to stderr if a PDF contains no
searchable text. This is the case for PDFs that consist only of images, for
example scanned documents.
--unac
Remove accents and ligatures from both the search pattern
and the PDF documents. This is useful if you want to search for a word
containing "ae", but the PDF uses the single character
"æ" instead. See unac(3) and unaccent(1) for
details.
This option is experimental and only available if pdfgrep is compiled with
unac support.
-q, --quiet
Suppress all normal output to stdout. Exit immediately
with exit status zero if a match is found, even in case of errors. Use this if
you only care about the presence of matches, not their number or
content.
Errors will be printed and the exit codes will be returned (see below).
--help
Print a short summary of the options.
-V, --version Show version information.
EXIT STATUS¶
Normally, the exit status is 0 if at least one match is found, 1 if no match is found and 2 if an error occurred. But if the --quiet or -q option is used and a match was found, pdfgrep will return 0 regardless of errors.ENVIRONMENT VARIABLES¶
The behavior of pdfgrep is affected by the following environment variable. GREP_COLORSSpecifies the colors and other attributes used to
highlight various parts of the output. The syntax and values are like
GREP_COLORS of grep. See grep(1) for more details.
Currently only the capabilities mt, ms, mc, fn,
ln and se are used by pdfgrep, where mt, ms
and mc have the same effect.
FILES¶
${XDG_CACHE_HOME}/pdfgrep/*Cache files written and used when --cache is
enabled. At most 200 cache entries older than a day are retained.
EXAMPLES¶
Print the first ten lines matching pattern and print their page numberpdfgrep -n --max-count 10 pattern foo.pdf
pdfgrep -r --include "foo*.pdf" pattern
find . -name "*.pdf" -size -12M -print0 | xargs -0 pdfgrep pattern
BUGS¶
Reporting Bugs¶
Bugs can either be reportet to the mailing list (pdfgrep-users@pdfgrep.org) or to the bugtracker on gitlab (https://gitlab.com/pdfgrep/pdfgrep/issues).AUTHORS¶
pdfgrep is maintained by Hans-Peter Deifel. See the AUTHORS file in the source for a full list of contributors.SEE ALSO¶
grep(1), pcre(3), regex(7) See pdfgrep’s website https://pdfgrep.org for more information, downloads, git repository and more.01/25/2017 | Pdfgrep 2.0 |