fd2.1 - nroff source

FD2(1)                         General Commands                         FD2(1)

NAME
       fd2 - redirect from/to file descriptor 2

SYNOPSIS
       fd2 [-e] [-f file] command [arg ...]

DESCRIPTION
       Since  the  Sixth  Edition  UNIX  shell provides no way to redirect the
       diagnostic output, fd2 makes this possible by executing  the  specified
       command  with  the  given  arguments  and redirecting file descriptor 2
       (standard error) to file descriptor 1 (standard output) by default.

       The options are as follows:

       -e     Causes all conventional output from command to be redirected  to
              the standard error as diagnostic output.

       -f file
              Causes  all  diagnostic  output from command to be redirected to
              file, which is created if it does  not  exist.   If  it  already
              exists, all diagnostic output is appended to the end of file.

EXIT STATUS
       If  fd2 detects an error, it prints an appropriate diagnostic and exits
       with a non-zero status.  Otherwise, the exit status is that of the exe-
       cuted command.

ENVIRONMENT
       EXECSHELL
              If  set  to  a  non-empty  string, the value of this variable is
              taken as the path name of the shell which is invoked to  execute
              the  specified  command  when  it does not begin with the proper
              magic number or a `#!shell' sequence.

       PATH   If set to a non-empty string, the  value  of  this  variable  is
              taken as the sequence of directories which is used to search for
              the specified command.

EXAMPLES
       The examples below which refer to `/tmp/$$' assume that this  directory
       exists and is writable by the user.  The following command line:

             fd2 -e echo progname: Error message

       causes  all conventional output from echo to be redirected to the stan-
       dard error as diagnostic output.  The following command line:

             fd2 make foo >/tmp/$$/foo.outerr

       causes all conventional and diagnostic output from  make  to  be  redi-
       rected  to the file `/tmp/$$/foo.outerr', which is first created by the
       shell.  In contrast:

             fd2 -f /tmp/$$/foo.err make foo >/tmp/$$/foo.out

       causes  all  conventional  output  to  be  redirected   to   the   file
       `/tmp/$$/foo.out',  which is created by the shell.  All diagnostic out-
       put is redirected to the file `/tmp/$$/foo.err', which  is  created  by
       fd2 if it does not already exist.

SEE ALSO
       osh(1), sh6(1)

       Osh home page: http://v6shell.org/

AUTHOR
       This implementation of fd2 is written by Jeffrey Allen Neitzel.

LICENSE
       See   either  the  LICENSE  file  which  is  distributed  with  osh  or
       http://v6shell.org/license/ for full details.

osh-20081122                   November 19, 2008                        FD2(1)