# Command: xgrep

      XGREP is a program for searching text files based on the UNIX utility
      GREP. You can use XGREP to:
        - display the lines in a file that contain a particular word, phrase
          phrase, or pattern;
        - count those lines in which a particular pattern occurs; or generate
          a list of files that refer to a given topic.

## Syntax:

      xgrep [-chlnsvyorx] expression [files]
      xgrep [/chlnsvyorx] expression [files]
            expression  the expression to search, may also be classes.

#### [Main menu] [top] (Syntax) [Options] [Comments] [Examples] [See also] [File]

## Options:

      -c  Line count only.
      -h  No file names.
      -l  File names only.
      -n  Number of lines.
      -o  Errors to stdout - error messages will be redirected along with
          standard output.
      -r  Recursively search subdirectories - looks for files not only in the
          specified directory but in all the subdirectory of that directory.
      -s  Silent about inaccessible files.
      -v  Non-matching lines - "inverts" the result of any match.
      -x  No magic: all operators need '\'. The -x option causes the
          ordinarily "special" characters: . [ * + ? ^ $ to be parsed, by
          default, as literals. For example, the following command are
          equivalent:
            xgrep    "p\[0] \* 3" test.c
            xgrep -x "p[0] * 3"   test.c
          All regular expression operators are still accessible, but must be
          preceded by a \ (backslash).
      -y  Case-insensitive match - matching is not case-sensitive.
      Two further options are supported as aliases for other options:
      -d  is an alias for -r.
      -i  is an alias for -y.

#### [Main menu] [top] [Syntax] (Options) [Comments] [Examples] [See also] [File]

## Comments:

      Like GREP, XGREP works best on plain text files: the sort of files
      that do not contain binary data or non-ASCII control characters, and
      which are divided into lines or records ending in a '\n' (newline).
      XGREP supports text files in both UNIX (LF) and MS-DOS (CR, LF)
      formats.
      In XGREP, the : (colon) may be used to refer to predefined classes.
      The twelve predefined classes, together with their definitions, are as
      follows:
        :a  Alpha  alphabetic   [A-Za-z]       =ASCII range: 65-90,97-122
        :c  Cntrl  control                     =ASCII range: 0-31,127
        :d  Digit  digits       [0-9]          =ASCII range: 48-57
        :g  Graph  graphics     [!-~]          =ASCII range: 33-126
        :l  Lower  lowercase    [a-z]          =ASCII range: 97-122
        :n  Alnum  alphanumeric [0-9A-Za-z]    =ASCII range: 48-57,65-90,97-122
        :p  Punct  punctuation  [!-/:-@[-`{-~] =ASCII range: 33-47,58-64,91-96,
                                                             123-126
        :s  Space  whitespace                  =ASCII range: 9-13,32
        :t  Print  printable    [ -~]          =ASCII range: 32-126
        :u  Upper  uppercase    [A-Z]          =ASCII range: 65-90
        :x  Xdigit hex digits   [0-9A-Fa-f]    =ASCII range: 48-57,65-70,97-102
        :z  ASCII                              =ASCII range: 0-127

      Signs to specify the context:
        ^    Start of line
        $    End of line
        .    Wildcard
        []   Character class
        [^]  Inverse Class
        \    Quote next character
      Repeat:
        *        0 or more times
        +        1 or more times
        ?        0 or 1 times
        \{m\}    m times
        \{m,\}   m or more times
        \{m,u\}  m to u times
      For more information about ":" and "signs to specify the context" please
      read XGREP.DOC.
      XGREP has the following EXITCODES (ERRORLEVEL):
        0  At least one match found.
        1  No matches found.
        2  Error(s) occurred.

#### [Main menu] [top] [Syntax] [Options] (Comments) [Examples] [See also] [File]

## Examples:

      xgrep "Hello World" *.c
      xgrep -c jill group
      xgrep -l SCSI *.doc
      xgrep widgets
      xgrep -n widgets notes.txt
      xgrep -n -rs widgets \*.txt \*.doc

#### [Main menu] [top] [Syntax] [Options] [Comments] (Examples) [See also] [File]

## See also:

      find

#### [Main menu] [top] [Syntax] [Options] [Comments] [Examples] (See also) [File]

## File:

      Please read this command's lsm file also.
      You will find the updated version (internet) here and
      the version described in this manual page here.
      The lsm file contains information about the name of the programmer,
      the download site, and some other command related information.

#### [Main menu] [top] [Syntax] [Options] [Comments] [Examples] [See also] (File)

      Copyright ©2008 W. Spiegl.

      This file is derived from the FreeDOS Spec Command HOWTO.
      See the file H2Cpying for copying conditions.