Difference between revisions of "Grep"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
+ | ==Include or exclude filename of matched file== | ||
+ | |||
+ | -H, --with-filename # Default if there are multiple files to search | ||
+ | -h, --no-filename # Default if there is only one file to search (or stdin) | ||
+ | |||
==grep with find== | ==grep with find== | ||
Revision as of 10:48, 20 January 2017
Include or exclude filename of matched file
-H, --with-filename # Default if there are multiple files to search -h, --no-filename # Default if there is only one file to search (or stdin)
grep with find
Given the common grep
command
grep -R 'pattern' *
a corresponding find -exec
command should add -H
to include the filename prefix in the results. (This is needed because the filenames are given one at a time.)
find … -exec grep -HR 'pattern' {} \;
If necessary, use the command from Find#Sorting_by_mtime to search on files in date order:
find … -printf '%T@ %p\0' |
sort -zk 1n | # 1n for oldest first, 1nr for newest first
sed -z 's/^[^ ]* //' |
xargs -0i grep -HR 'pattern' {}