


INTRO(1)                  User Commands                  INTRO(1)



NAME
     intro - introduction to commands

DESCRIPTION
     The  Heirloom  Toolchest  is  a  collection of standard Unix
     utilities that is intended to provide maximum  compatibility
     with  traditional  Unix  while incorporating additional fea-
     tures necessary  today.   To  achieve  this,  utilities  are
     derived  from  original  Unix  sources  if  permitted by its
     licenses.  This means that material from Unix  6th  Edition,
     Unix 7th Edition, and Unix 32V was used, since these systems
     were put under an Open Source license by Caldera in  January
     2002.   In  addition,  4BSD  source (governed by the Univer-
     sity's copyright and partially derived from  32V)  has  been
     used.   (Other  sources were Caldera's `Open Source Unix[tm]
     Tools', the MINIX utility collection, Plan 9, and Info-ZIP's
     compression  codes.)   If  no  freely available Unix sources
     were available (for example, for tools introduced in  System
     III  or  System  V),  utilities were rewritten from scratch.
     (The exact license terms are provided in  a  separate  docu-
     ment.)

     The  tools in this collection are oriented on the specifica-
     tions or systems named below.  Since there are  some  incom-
     patibilities  between  them,  some tools are present in more
     than one version.

     -    System V Interface Definition, Third Edition (UNIX Sys-
          tem  Laboratories,  1992)  (SVID3).  This specification
          corresponds to a System V Release 4 or Solaris  2  sys-
          tem.   Utilities  in  /usr/5bin  are modeled after this
          specification  and  related  system  environments.   If
          extensions  introduced  in  POSIX.2 (see below) did not
          provoke conflicts with the behavior at this level, they
          were  incorporated in these utilities as well.  This is
          the most traditional  personality  available  with  the
          Heirloom Toolchest; prominently, regular expressions do
          not have any of the internationalization features  (see
          ed(1)  and  egrep(1)),  and  awk  is  the  old version,
          oawk(1).  Use this personality to get best  compatibil-
          ity with traditional System V behavior.

     -    System  V Interface Definition, Fourth Edition (Novell,
          Inc., 1995) (SVID4).  This specification corresponds to
          a  System  V  Release  4.2  MP  system.   Utilities  in
          /usr/5bin/s42 are modeled after this specification  and
          related  system environments.  If extensions introduced
          in POSIX.2 (see below) did not provoke  conflicts  with
          the  behavior  at this level, they were incorporated in
          these utilities as well.  The most essential difference
          between this and the SVID3 personality are internation-
          alized regular expressions and the choice  of  the  new



Heirloom Toolchest           5/15/04                            1






INTRO(1)                  User Commands                  INTRO(1)



          awk,  nawk(1),  for  awk.   Use this personality to get
          traditional System V behavior  combined  with  interna-
          tionalized regular expressions.

     -    ISO/IEC   9945-2:1993   /   ANSI/IEEE  Std  1003.2-1992
          (POSIX.2), with the extensions of The Single UNIX Spec-
          ification, Version 2 (The Open Group, 1997).  Utilities
          in /usr/5bin/posix are intended to fully comply to this
          specification even in cases of conflict with historical
          behavior.  Non-conflicting extensions to POSIX.2  found
          in the environments described above are also present in
          these utilities.  Use  this  personality  if  you  need
          POSIX.2  features in preference to traditional System V
          ones.

     To use the Heirloom Toolchest, select one of these personal-
     ities  and  put the corresponding directory at the beginning
     of the PATH environment variable,  immediately  followed  by
     the  toolchest base directory, /usr/5bin (which contains the
     tools that are the same for all personalities).   For  exam-
     ple, to use the toolchest with a SVID4 personality, execute

          PATH=/usr/5bin/s42:/usr/5bin:$PATH export PATH

     You  must select exactly one of the personalities above; you
     do not have access to the complete set of tools otherwise.

     The toolchest also includes some utilities modeled after the
     BSD  Compatibility  environment  of  System V; these roughly
     correspond to 4.3BSD or SunOS 4 systems.  These tools can be
     found in /usr/ucb; since they do not form a full personality
     set as the ones described above,  they  should  be  used  in
     addition, as e.g.

          PATH=/usr/ucb:/usr/5bin/s42:/usr/5bin:$PATH export PATH

     does.

     While the Heirloom Toolchest is intended to be as compatible
     as  possible  with  historical practice in general, annoying
     static limits of historical implementations are not  present
     any  longer.   Input lines of unlimited length are generally
     accepted (as long as enough memory is available); most util-
     ities  are also able to handle binary input data (i.e. ASCII
     NUL characters in the input stream).

  Multibyte character sets
     The Heirloom Toolchest includes support for multibyte  char-
     acter  sets; if the system's C library supports this and the
     LC_CTYPE locale (see locale(7) for an introduction)  is  set
     appropriately,  multiple input bytes can form a single char-
     acter and  are  handled  as  such  in  regular  expressions,



Heirloom Toolchest           5/15/04                            2






INTRO(1)                  User Commands                  INTRO(1)



     display width computations etc.

     Multibyte character support was designed with special regard
     to the UTF-8 encoding.  Other encodings may also work,  with
     the following restrictions:

     - The  first  byte of each multibyte character must have the
       highest bit set, i.e. it must not be an ASCII character.

     - All ASCII characters must be represented as a single  byte
       with  the same value as the ASCII character.  In addition,
       the C language implementation must map each ASCII  charac-
       ter to a wide character with the same value.

     - Locking-shift encodings are not supported.

     Processing  of  multibyte  character  encodings  is  notably
     slower than that of singlebyte character  encodings.   Since
     many  widely-used  languages (especially European ones based
     on  Latin  letters)  contain  few  multibyte  characters  if
     encoded  in  UTF-8,  and  since  experience shows that large
     amounts of textual data tend to be machine generated and  to
     contain  mostly  ASCII  characters  (e.g.  log files), while
     international language texts are mostly  created  by  humans
     and tend to be much smaller, processing of multibyte charac-
     ters has generally been optimized for ASCII  text,  even  in
     multibyte locales.

     A  problem  with  multibyte encodings that does not normally
     occur in  singlebyte  encodings  is  that  of  illegal  byte
     sequences.   In a singlebyte locale, each byte is treated as
     a character entity even if its value  is  not  mapped  to  a
     character.  For example, characters with the highest bit set
     are simply passed through in  the  default  `C'  or  `POSIX'
     locale,  and  can  appear  in option arguments as well as in
     input data.  In multibyte locales  however,  byte  sequences
     that  do  not  form a valid character cannot be handled this
     way, because it is not clear which bytes are to  be  grouped
     together.   For  example,  suppose that the `\200' character
     introduces a multibyte sequence but  cannot  appear  as  its
     second  or following byte.  If a sequence of four such char-
     acters `\200\200\200\200' is found in a string to be matched
     in  the  input processed by a utility, it is unclear whether
     it should match a sequence of six such characters.  For this
     reason,  this  implementation  generally treats illegal byte
     sequences in command line arguments or  programming  scripts
     as  syntax  errors.   It  does  not  issue a warning if such
     sequences appear in input data,  however,  since  experience
     shows  this  to  happen quite often, and a utility unable to
     process such input would be of little practical value.





Heirloom Toolchest           5/15/04                            3






INTRO(1)                  User Commands                  INTRO(1)



     As singlebyte character encodings are processed  faster  and
     less  error-prone, it is recommended that such encodings are
     used wherever possible.  While UTF-8 is a good encoding  for
     data  exchange,  mixed-language  texts or texts that contain
     special glyphs, most texts in European languages can be rep-
     resented  in a singlebyte encoding, e.g. one of the ISO-8859
     family.  Doing so for storage and processing on a Unix  sys-
     tem  and  converting  to UTF-8 for transfer only will be the
     best method in many cases.

  List of commands
     Name      Appears on Page Description
     apropos   apropos(1)      locate commands by keyword lookup
     banner    banner(1)       make posters
     basename  basename(1)     return non-directory portion of a pathname
     basename  basename(1B)    (BSD) return non-directory portion of a pathname
     bc        bc(1)           arbitrary-precision arithmetic language
     cal       cal(1)          print calendar
     calendar  calendar(1)     reminder service
     cat       cat(1)          concatenate and print files
     catman    catman(8)       create the formatted files for the reference manual
     chgrp     chown(1)        change owner or group
     chmod     chmod(1)        change mode
     chown     chown(1)        change owner or group
     chown     chown(1B)       (BSD) change file ownwer
     cksum     cksum(1)        write file checksums and sizes
     cmp       cmp(1)          compare two files
     col       col(1)          filter reverse line feeds
     comm      comm(1)         select or reject lines common to two sorted files
     copy      copy(1XNX)      (XENIX) copy groups of files
     cp        cp(1)           copy files
     cpio      cpio(1)         copy file archives in and out
     csplit    csplit(1)       context split
     cut       cut(1)          cut out selected fields of each line of a file
     date      date(1)         print or set the date
     dc        dc(1)           desk calculator
     dd        dd(1)           convert and copy a file
     deroff    deroff(1)       remove nroff/troff, tbl, and eqn constructs
     deroff    deroff(1B)      (BSD) remove nroff, troff, tbl and eqn constructs
     df        df(1)           disk free
     df        df(1B)          (BSD) disk free
     dfspace   df(1)           disk free
     diff      diff(1)         differential file comparator
     diff3     diff3(1)        3-way differential file comparison
     dirname   dirname(1)      return the directory portion of a pathname
     du        du(1)           summarize disk usage
     du        du(1B)          (BSD) summarize disk usage
     ed        ed(1)           text editor
     egrep     egrep(1)        search a file for a pattern using full regular expressions
     env       env(1)          set environment for command invocation
     expand    expand(1)       convert tabs to spaces




Heirloom Toolchest           5/15/04                            4






INTRO(1)                  User Commands                  INTRO(1)



     expr      expr(1)         evaluate arguments as an expression
     factor    factor(1)       factor a number
     fgrep     fgrep(1)        search a file for a character string
     file      file(1)         determine file type
     find      find(1)         find files
     fmt       fmt(1)          simple text formatter
     fold      fold(1)         fold long lines
     grep      grep(1)         search a file for a pattern
     groups    groups(1)       show group memberships
     groups    groups(1B)      (BSD) show group memberships
     hd        hd(1XNX)        (XENIX) display files in hexadecimal format
     head      head(1)         display first few lines of files
     hostname  hostname(1)     set or print name of current host system
     id        id(1)           print user and group IDs and names
     install   install(1B)     (BSD) install files
     join      join(1)         relational database operator
     lc        ls(1)           list contents of directory
     line      line(1)         read one line
     listusers listusers(1)    print a list of user logins
     ln        ln(1)           make a link
     ln        ln(1B)          (BSD) make links
     logins    logins(1)       list login information
     logname   logname(1)      get login name
     ls        ls(1)           list contents of directory
     ls        ls(1B)          (BSD) list contents of directory
     mail      mail(1)         send or receive mail among users
     man       man(1)          find and display reference manual pages
     mkdir     mkdir(1)        make a directory
     mkfifo    mkfifo(1)       make FIFO special file
     mknod     mknod(1M)       build special file
     more      more(1)         browse or page through a text file
     mt        mt(1)           magnetic tape utility
     mv        mv(1)           move or rename files and directories
     nawk      nawk(1)         pattern scanning and processing language
     newform   newform(1)      change the format of a text file
     news      news(1)         print news items
     nice      nice(1)         run a command at low priority
     nl        nl(1)           line numbering filter
     nohup     nohup(1)        run a command immune to hangups
     oawk      oawk(1)         pattern scanning and processing language
     od        od(1)           octal dump
     page      more(1)         browse or page through a text file
     paste     paste(1)        merge same lines of several files or subsequent lines of one file
     pax       pax(1)          portable archive interchange
     pg        pg(1)           file perusal filter for CRTs
     pgrep     pgrep(1)        find or signal processes by name and other attributes
     pkill     pgrep(1)        find or signal processes by name and other attributes
     pr        pr(1)           print files
     printenv  printenv(1)     print out the environment
     priocntl  priocntl(1)     process scheduler control
     ps        ps(1)           process status




Heirloom Toolchest           5/15/04                            5






INTRO(1)                  User Commands                  INTRO(1)



     ps        ps(1B)          (BSD) process status
     psrinfo   psrinfo(1)      displays information about processors
     ptime     time(1)         time a command
     random    random(1XNX)    (XENIX) generate a random number
     renice    renice(1)       alter priority of running processes
     rm        rm(1)           remove directory entries
     rmdir     rmdir(1)        remove directories
     sdiff     sdiff(1)        print file differences side-by-side
     sed       sed(1)          stream editor
     setpgrp   setpgrp(1)      set process group ID and session ID
     settime   settime(1XNX)   (XENIX) change the access and modification dates of files
     shl       shl(1)          shell layer manager
     sleep     sleep(1)        suspend execution for an interval
     sort      sort(1)         sort or merge files
     spell     spell(1)        find spelling errors
     spellin   spell(1)        find spelling errors
     spellout  spell(1)        find spelling errors
     split     split(1)        split a file into pieces
     stty      stty(1)         set the options for a terminal
     stty      stty(1B)        (BSD) set the options for a terminal
     su        su(1)           become super-user or another user
     sum       sum(1)          sum and count blocks in a file
     sum       sum(1B)         (BSD) sum and count blocks in a file
     sync      sync(1M)        update the super block
     tabs      tabs(1)         set terminal tabs
     tail      tail(1)         deliver the last part of a file
     tape      tape(1)         magnetic tape maintenance
     tapecntl  tapecntl(1)     tape control for tape devices
     tar       tar(1)          tape archiver
     tcopy     tcopy(1)        copy a magnetic tape
     tee       tee(1)          pipe fitting
     time      time(1)         time a command
     touch     touch(1)        update file access and modification times
     tr        tr(1)           translate characters
     tr        tr(1B)          (BSD) translate characters
     tsort     tsort(1)        topological sort
     tty       tty(1)          get terminal name
     ul        ul(1)           underline
     uname     uname(1)        get system name
     unexpand  unexpand(1)     convert spaces to tabs
     uniq      uniq(1)         report repeated lines in a file
     units     units(1)        conversion program
     uptime    uptime(1)       show how long system has been up
     users     users(1)        display a compact list of users logged in
     w         w(1)            who is on and what they are doing
     wc        wc(1)           word count
     what      what(1)         identify SCCS files
     whatis    whatis(1)       display a one-line summary about a keyword
     who       who(1)          who is on the system
     whoami    whoami(1)       display the effective current username
     whodo     whodo(1)        who is doing what




Heirloom Toolchest           5/15/04                            6






INTRO(1)                  User Commands                  INTRO(1)



     xargs     xargs(1)        construct argument list(s) and execute command
     yes       yes(1XNX)       (XENIX) print strint repeatedly

  Other manual entries
     Page     Description
     fspec(5) format specifications in text files
     intro(1) introduction to commands
     man(7)   macros to typeset manual















































Heirloom Toolchest           5/15/04                            7



