John Plocher <[EMAIL PROTECTED]> wrote:

> What kinds of risk?  By definition, existing scripts and customers don't use
> the long options, so this would be justified only by how it enabled new
> markets (i.e., porting from Linux...); adding long options diverges the
> commands from the POSIX spec, so there might be issues there; following
> some other spec for the names of the long options (gnu?) means that we
> would have two disjoint sources of potential change to manage - what if
> POSIX changes and what if GNU changes.

For commands I develop that are intended to be full POSIX replacement programs
(such as sfind), I tend to use documentation methods to warn people about a
devergence to POSIX.

Example:

sfind -help
Usage:  sfind [options] [path_1 ... path_n] [expression]
Options:
        -H      follow symbolics links encountered on command line
        -L      follow all symbolic links
*       -P      do not follow symbolic links (default)
*       -help   Print this help.
*       -version Print version number.
Operators in decreasing precedence:
        ( )     group an expression
        !, -a, -o negate a primary (unary NOT), logical AND, logical OR
Primaries:
*       -acl          TRUE if the file has additional ACLs defined
        -atime #      TRUE if st_atime is in specified range
        -ctime #      TRUE if st_ctime is in specified range
        -depth        evaluate directory content before directory (always TRUE)
        -exec program [argument ...] \;
        -exec program [argument ...] {} +
*       -follow       outdated: follow all symbolic links (always TRUE)
*       -fstype type  TRUE if st_fstype matches type
        -group gname/gid TRUE if st_gid matches gname/gid
*       -inum #       TRUE is st_ino is in specified range
*       -linkedto path TRUE if the file is linked to path
        -links #      TRUE is st_nlink is in specified range
*       -lname glob   TRUE if symlink name matches shell glob
*       -local        TRUE if st_fstype does not match remote fs types
*       -lpat pattern TRUE if symlink name matches pattern
*       -ls           list files similar to 'ls -ilds' (always TRUE)
        -mtime #      TRUE if st_mtime is in specified range
        -name glob    TRUE if path component matches shell glob
        -newer file   TRUE if st_mtime newer then mtime of file
        -newerXY file TRUE if [acm]time (X) newer then [acm]time (Y) of file
        -nogroup      TRUE if not in group database
        -nouser       TRUE if not in user database
        -ok program [argument ...] \;
*       -pat pattern  TRUE if path component matches pattern
*       -path glob    TRUE if full path matches shell glob
        -perm mode/onum TRUE if symbolic/octal permission matches
*       -ppat pattern TRUE if full path matches pattern
        -print        print file names line separated to stdout (always TRUE)
*       -printnnl     print file names space separated to stdout (always TRUE)
        -prune        do not descent current directory (always TRUE)
        -size #       TRUE if st_size is in specified range
        -type c       TRUE if file type matches, c is from (b c d D e f l p s)
        -user uname/uid TRUE if st_uid matches uname/uid
*       -xattr        TRUE if the file has extended attributes
        -xdev, -mount restrict search to current filesystem (always TRUE)
Primaries marked with '*' are POSIX extensions.
If path is omitted, '.' is used. If expression is omitted, -print is used.

Jörg

-- 
 EMail:[EMAIL PROTECTED] (home) Jörg Schilling D-13353 Berlin
       [EMAIL PROTECTED]                (uni)  
       [EMAIL PROTECTED]        (work) Blog: http://schily.blogspot.com/
 URL:  http://cdrecord.berlios.de/old/private/ ftp://ftp.berlios.de/pub/schily
_______________________________________________
opensolaris-discuss mailing list
opensolaris-discuss@opensolaris.org

Reply via email to