Olga, please check my comments inline: On Tue, Mar 2, 2010 at 9:55 PM, Garrett D'Amore - sun microsystems <gd78059 at sac.sfbay.sun.com> wrote: > > Template Version: @(#)sac_nextcase 1.69 02/15/10 SMI > This information is Copyright 2010 Sun Microsystems > 1. Introduction > 1.1. Project/Component Working Name: > xgrep > 1.2. Name of Document Author/Supplier: > Author: Olga Kyrzhanovska > 1.3 Date of This Document: > 02 March, 2010 > 4. Technical Description > I'm sponsoring this fast-track request on behalf of the > POSIX utility community and shell project. > Please note that this is an *open* case. > > The release binding is the same as with the ksh93 project: a > patch/micro release of Solaris delivering through ON > Stability levels are as described below. > > > This project is an amendment to the Korn Shell 93 Integration project > (PSARC/2006/550 and PSARC/2007/035, PSARC/2008/094, PSARC/2008/344 > and PSARC/2008/589) specifying the following additional > interfaces: > Addition of /usr/bin/xgrep > > Bug/RFE Number(s): > > 6929154 RFE: Add /usr/bin/xgrep (Augmented regular expressions > (conjunction, negation.)) > > > Interface Stability Description > --------- --------- ----------- > /usr/bin/xgrep Committed xgrep command > ksh93 'xgrep' built in Committed xgrep command > > > > Man page for xgrep.1: > > ======================================================================== > NAME > xgrep - search lines in files for matching augmented regular patterns > > SYNOPSIS > xgrep [ options ] [ pattern ] [ file ... ] > > DESCRIPTION > The xgrep commands search the named input files for lines > containing a match for the given patterns. Matching lines are > printed by default. The standard input is searched if no files are > given or when the file - is specified. > > OPTIONS > -G, --basic-regexp > grep mode: basic regular expression > patterns. > -E, --extended-regexp > egrep mode: extended regular expression patterns. > -X, --augmented-regexp > xgrep mode (default): augmented regular expression > patterns. > -P, --perl-regexp > pgrep mode: perl(1) regular expression patterns. > -F, --fixed-string > fgrep mode: fixed string patterns. > -C, --context[=before[,after]] > Set the matched line context before and after > count. By default only matched lines are printed. > The option value may be omitted. The default value > is 2,2. > -c, --count Only print a matching line count for each file. > -e, --expression|pattern|regexp=pattern > Specify a matching pattern. More than one pattern > implies alternation. If this option is specified > then the command line pattern must be omitted. > -f, --file=pattern-file > Each line in pattern-file is a pattern, placed > into a single alternating expression. > -H, --filename|with-filename > Prefix each matched line with the containing file > name. > -h, --no-filename > Suppress containing file name prefix for each > matched line. > -i, --ignore-case > Ignore case when matching. > -l, --files-with-matches > Only print file names with at least one match. > -L, --files-without-matches > Only print file names with no matches. > -b, --highlight Highlight matches using the ansi terminal bold > sequence. > -v, --invert-match|revert-match > Invert the pattern match sense. > -m, --label All patterns must be of the form label:pattern. > Match and count output will be prefixed by the > corresponding label:. > -O, --lenient Enable lenient pattern interpretation. This is the > default. > -x, --line-match|line-regexp > Force patterns to match complete lines. > -n, --number|line-number > Prefix each matched line with its line number. > -N, --name=name Set the standard input file name prefix to name. > The default value is empty. > -q, --quiet|silent > Do not print matching lines. > -S, --strict Enable strict pattern interpretation with > diagnostics. > -s, --suppress|no-messages > Suppress error and warning messages. > -t, --total Only print a single matching line count for all > files. > -w, --word-match|word-regexp > Force patterns to match complete words. > -a Ignored for GNU compatibility. > --help Print help message.
--version is missing. > DIAGNOSTICS > Exit status 0 if matches were found, 1 if no matches were found, > where -v inverts the exit status. Exit status 2 for other errors > > ATTRIBUTES > See attributes(5) for descriptions of the following attri- > butes: > > /usr/bin/xgrep and ksh93 xgrep built in command: > ____________________________________________________________ > | ATTRIBUTE TYPE | ATTRIBUTE VALUE | > |______________________________|____________________________| > | Availability | SUNWcsu | > |______________________________|____________________________| > | CSI | enabled | > |______________________________|____________________________| > | Interface Stability | Committed | > |______________________________|____________________________| Are you sure you want this all as Committed? If I understood Roland right he said that options should only be Committed if they fall into one or more of these categories and Uncommitted otherwise: - The option is defined by the SUS or POSIX standard - More than two implementations provide this option - The option has been around for many years xgrep is not a utility defined by POSIX or SUS but grep is and I see this case as first step towards a modernisation of /usr/bin/grep, /usr/bin/xpg4/bin/grep and cohorts (I see you already have the code integrated). Irek