4.3BSD/usr/contrib/icon/man/cat1/gset.1




GSET(1)               Icon Program Library                GSET(1)



NNNNAAAAMMMMEEEE
     gset - perform set operations on UNIX file specifications

SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
     ggggsssseeeetttt argument

DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
     The UNIX shell provides for the specification of filenames
     using ``wildcards''.  Each wildcard specification may be
     thought of as defining a set of names (that is, those that
     match the specification).  _G_s_e_t allows the user to apply the
     set operations of intersection, union, and difference to
     these filename sets. The resultant list may then be used as
     an argument to other shell commands.

     _G_s_e_t's argument is an expression composed of legal UNIX file
     specifications, parenthesis, and the following set opera-
     tors:

          &&   intersection
          ++++++++   union
          --------   difference

     Because characters that have special meaning to the shell
     occur frequently in the arguments used for _g_s_e_t, it is
     advisable to quote the arguments consistently.

     The use of _g_s_e_t is illustrated by the following examples:

          gset 'g*--*.icn'

     produces the list (set) of filenames for files beginning
     with gggg, excluding those ending with ....iiiiccccnnnn.

     Similarly,

          gset '*'

     produces all files in the current directory excluding the ....
     and ........ files.

          gset '((*--*.icn)++c*)'

     and

          gset '(*--*.icn)++c*'

     produces the complement of all filenames ending with ....iiiiccccnnnn in
     addition to all filenames beginning with cccc.

          gset '(((c? && c*)))'




Version 5.9    The University of Arizona - 8/16/84              1






GSET(1)               Icon Program Library                GSET(1)



     is a redundant, but legal, specification for all two-
     character filenames that begin with cccc, while

          gset '.*'

     produces the set of filenames for all hidden files, exclud-
     ing the .... and ........  files.

LLLLIIIIMMMMIIIITTTTAAAATTTTIIIIOOOONNNNSSSS
     Multiple command line arguments, formed by omitting the
     quotes around the file set expression, are permitted.  Their
     use is limited, however, since parentheses do not get past
     the shell's command-line expansion.

     Almost any legal file specification will work when enclosed
     in quotes except that the simple grammar that is used cannot
     handle blanks adjacent to parentheses.

     File names that begin or end in ``questionable'' characters
     such as ****, ????, ++++, ----, and &&&&, probably will not work.

     A file specification that, when interpreted by the shell,
     produces no matching filename will be placed (unchanged) in
     the result.

SSSSEEEEEEEE AAAALLLLSSSSOOOO
     gcomp(1), fset(1)

AAAAUUUUTTTTHHHHOOOORRRR
     Thomas R. Hicks

























Version 5.9    The University of Arizona - 8/16/84              2