grep | BitKeeper Documentation

bk grep(7.3ce) BitKeeper User's Manual bk grep(7.3ce)
NAME
 bk grep - search some/all revisions of one or more files for a pattern
SYNOPSIS
 bk grep [options] <pattern> [<file> ... | -]
DESCRIPTION
 The bk grep command searches the named files (or standard input if the
 file name "-" is given) for lines containing a match to the given pat-
 tern. The pattern may be a perl compatible regular expression. By
 default, bk grep prints the matching lines.
 While designed to be command line compatible with GNU grep, bk grep can
 search in the most recent revision of a file, all revisions of a file,
 a subset of revisions of a file, or the checked out and (possibly) mod-
 ified version of a file. By default, bk grep searches the checked out
 version of a file and if that is not present then it searches the most
 recent version of the file. The "-r", "-R", and "-c" options are used
 to control where in a file's history to search.
 The printed lines may be annotated with file names, dates, revision
 numbers, line numbers, and/or user names.
OPTIONS
 -A<num> Print num lines of trailing context after matching lines.
 Places a line containing "--" between contiguous groups of
 matches. (Like GNU grep.)
 -A<bdnpru> Annotate the output with information from the revision his-
 tory. Each annotation is aligned in a column. The option
 argument[s] turn on one or more annotations as a prefix to
 each line. The order of fields is fixed (no matter what
 order you specify them) and is the same as the order listed
 below:
 p Prefix each line with the pathname of the file rela-
 tive to the current working directory. The name is
 always the current name of the file even if it has
 been renamed.
 d Prefix each line with the date of last modification.
 u Prefix each line with the name of the user who last
 modified it.
 r Prefix each line with the revision of last modifica-
 tion.
 n Prefix each line with its line number.
 This option is incompatible with the -A/-B/-C context
 options, use -a if you need more lines of context.
 -a<dnpru> Similar to "-A" but each annotation is followed by a colon
 rather than a set of spaces aligning the output. The order
 of fields is fixed (no matter what order you specify them)
 and is: pathname, date, user, revision, line number.
 -B<num> Print num lines of leading context before matching lines.
 Places a line containing "--" between contiguous groups of
 matches. (Like GNU grep.)
 -C[<num>] Print num lines of output context. Places a line containing
 "--" between contiguous groups of matches. If no value is
 given defaults to 2. (Like GNU grep.)
 -c<dates> Select the versions to search as all deltas created in the
 specified range of dates. (Different than GNU grep.)
 -h Do not print filenames with matches when multiple files are
 searched. Normally, if more than one file is searched the
 results are prefixed with the filename. (Like GNU grep.)
 -H Print the file name even if there is only one file being
 searched. Normally, if only one file is searched, then the
 file name is skipped unless it was explicitly selected.
 (Like GNU grep.)
 -i Ignore case distinctions in both the pattern and the input
 files. (Like GNU grep.)
 -l Suppress normal output; instead print the name of each input
 file from which output would have normally been produced.
 (Like GNU grep.)
 -L Suppress normal output; instead print the name of each input
 file from which no output would have normally been produced.
 (Like GNU grep.)
 -n Prefix each line with the line number from its input file.
 (Like GNU grep.)
 -q Do not produce any output. Exit immediately with zero sta-
 tus if any match is found. (Like GNU grep.)
 -r<rev> Only look in revision <rev> for the pattern.
 -R[<rev>] Only look in range of revisions <rev> for the pattern. If
 <rev> is not specified, that implies all versions of the
 file[s]. The difference between this option and the previ-
 ous option is that in this case bk grep looks in the lines
 added by the specified revision, but in the "-r" case, the
 entire contents of the specified version is searched.
 -v Invert the sense of matching, to select non-matching lines.
 (Like GNU grep.)
 -x Select only those matches that exactly match the whole line.
 (Like GNU grep.)
EXIT STATUS
 bk grep returns exit status:
 0 if any matches were found
 1 if no matches were found
 2 if an error occurred
EXAMPLES
 Look for a pattern in the working copy of a file:
 $ bk grep pattern foo.c
 Look for a pattern in the most recent checked in version of a file:
 $ bk grep -r+ pattern foo.c
 Look for a pattern in all checked in versions of a file (this searches
 every line ever present in the file, even if some lines have been
 deleted):
 $ bk grep -R pattern foo.c
 Look for a pattern in all files in the current working directory:
 $ bk grep pattern
 Look for a pattern in any version of any file in your tree (including
 deleted files; if this doesn't find it then pattern was never present
 in your history):
 $ bk -A grep -R pattern
 To see if it occurs in the most recent version of of any file of your
 tree:
 $ bk -A grep -r+ pattern
 To see if it occurs anywhere in any of your checked out files (this may
 be substantially faster than searching all files because it skips files
 not checked out):
 $ bk -UG grep pattern
 To see if it was added by the most recent delta made in of any active
 (undeleted) file of your tree:
 $ bk -U grep -R+ pattern
 See if a pattern was added in the last year (skips deleted files):
 $ bk -U grep -c-1y pattern
 See if a pattern was added between June 1 of 2010 and July 31 of 2010:
 $ bk -U grep -c2010/06..2010/07
 See if a pattern was added between two tagged releases:
 $ bk -U grep -Rbk-4.6..bk-5.0
 See if you left some debugging in the modified files (we tend to add
 fprintf(stderr, "DEBUG stuff0) statements but left justify them so we
 can find them):
 $ bk -cU grep '^fprintf'
BUGS
 The ways of specifying which versions to search are non-obvious. You
 need to read the examples carefully. We made the default be the most
 useful/common one.
 Binary files are never searched, they are silently ignored.
SEE ALSO
 bk annotate
 bk bk
 bk cat
 bk get
 bk pcre
 bk range
CATEGORY
 File
BitKeeper Inc 1E1 bk grep(7.3ce)

AltStyle によって変換されたページ (->オリジナル) /