Annotation of researchv10no/cmd/uucp/man/uux.1c, revision 1.1.1.1

1.1       root        1: .\"@(#)uux.1c  5.2
                      2: .TH UUX 1C
                      3: .SH NAME
                      4: uux \- unix to unix command execution
                      5: .SH SYNOPSIS
                      6: .B uux
                      7: [
                      8: options
                      9: ]
                     10: command-string
                     11: .SH DESCRIPTION
                     12: .I Uux\^
                     13: will gather zero or more files from various systems,
                     14: execute a command on a specified system
                     15: and then send standard output to a file on a specified
                     16: system.
                     17: Note that, for security reasons, many installations will
                     18: limit the list of
                     19: commands executable on behalf of an incoming request from
                     20: .IR uux .
                     21: Many sites will permit little more than
                     22: the receipt of mail (see
                     23: .IR mail (1))
                     24: via 
                     25: .IR uux .
                     26: .PP
                     27: The \fIcommand-string\fP is made up of one or more arguments that look
                     28: like a Shell command line,
                     29: except that the command and file names
                     30: may be prefixed by
                     31: .IB system-name !\fR.\fP
                     32: A null \fIsystem-name\fP is interpreted as the local system.
                     33: .PP
                     34: File names may be one of
                     35: .IP
                     36: (1) a full path name;
                     37: .IP
                     38: (2) a path name preceded by
                     39: .BI ~ xxx\^
                     40: where
                     41: .I xxx\^
                     42: is a login name on the specified system
                     43: and is replaced by that user's login directory;
                     44: .br
                     45: .IP
                     46: (3) anything else is prefixed by the current directory.
                     47: .PP
                     48: As an example, the command
                     49: .IP
                     50: uux "\^!diff usg!/usr/dan/file1 pwba!/a4/dan/file2 > !~/dan/file.diff\^"
                     51: .PP
                     52: will get the \fBfile1\fP and \fBfile2\fP files
                     53: from the ``usg'' and ``pwba'' machines,
                     54: execute a
                     55: .I diff\^
                     56: command
                     57: and put the results in \fBfile.diff\fP in the 
                     58: local PUBDIR/dan/ directory.
                     59: .PP
                     60: Any special shell characters such as \fB<>;\(bv\fP should be quoted either
                     61: by quoting the entire \fIcommand-string\fP, or quoting the special
                     62: characters as individual arguments.
                     63: .PP
                     64: .I Uux\^
                     65: will attempt to get all files to the execution system.
                     66: For files that are output files, the file name must be escaped using
                     67: parentheses.
                     68: For example, the command
                     69: .IP
                     70: uux a!cut -f1 b!/usr/file \\(c!/usr/file\\)
                     71: .PP
                     72: get \fB/usr/file\fP from system ``b'' and send it to system ``a'',
                     73: perform a \fIcut\fP command on that file
                     74: and send the result of the 
                     75: .I cut
                     76: command to system ``c''.
                     77: .PP
                     78: .I Uux\^
                     79: will notify you by mail if the requested command on the remote
                     80: system was disallowed.
                     81: This notification can be turned off by the \fB\-n\fP option.
                     82: .PP
                     83: The following \fIoptions\fP are interpreted by
                     84: .IR uux :
                     85: .TP .5i
                     86: .B \-
                     87: The standard input to
                     88: .I uux
                     89: is made the standard input to the
                     90: .IR command-string .
                     91: .TP .5i
                     92: .BI \-a name
                     93: Use
                     94: .I name
                     95: as the user identification replacing the initiator user-id.
                     96: (Notification will be returned to the user.)
                     97: .TP .5i
                     98: .B \-b
                     99: Return standard input to the command if the exit status is non-zero.
                    100: .TP .5i
                    101: .B \-c
                    102: Don't copy local file to the spool directory for transfer to the remote
                    103: machine (default).
                    104: .TP .5i
                    105: .B \-C
                    106: Force the copy of local files to the spool directory for transfer.
                    107: .TP .5i
                    108: .BI \-g grade\^
                    109: Grade is a single letter/number;
                    110: lower ASCII sequence characters will cause the job to be transmitted
                    111: earlier during a particular conversation.
                    112: .TP .5i
                    113: .B \-j
                    114: Output the jobid
                    115: \s-1ASCII\s+1 string on the standard output which is the job identification.
                    116: This job identification can be used by
                    117: .I uustat\^
                    118: to obtain the status 
                    119: or terminate a job.
                    120: .TP .5i
                    121: .B \-n
                    122: Do not notify the user if the comand fails.
                    123: .TP .5i
                    124: .B \-p
                    125: Same as \-:
                    126: The standard input to
                    127: .I uux
                    128: is made the standard input to the
                    129: .IR command-string .
                    130: .TP .5i
                    131: .B \-r
                    132: Don't start the file transfer, just queue the job.
                    133: .TP .5i
                    134: .BI \-s file\^
                    135: Report status of the transfer in
                    136: .I file.\^
                    137: .TP .5i
                    138: .BI \-x debug-level\^
                    139: Produce debugging output on stdout.
                    140: The debug_level is a number between 0 and 9;
                    141: higher numbers give more detailed information.
                    142: .TP .5i
                    143: .B \-z
                    144: Notify the user if the command succeeds.
                    145: .SH FILES
                    146: .PD 0
                    147: .TP 22
                    148: /usr/lib/uucp/spool
                    149: spool directories
                    150: .TP
                    151: /usr/lib/uucp/\(**
                    152: other data and programs
                    153: .PD
                    154: .SH SEE ALSO
                    155: uucp(1C).
                    156: .SH WARNINGS
                    157: Only the first command of a shell pipeline may
                    158: have a
                    159: .IB system-name !\fR.
                    160: All other commands are executed on the system of the first
                    161: command.
                    162: .br
                    163: The use of the shell metacharacter
                    164: .B \(**
                    165: will probably not do what you want it to do.
                    166: The shell tokens
                    167: .B <<
                    168: and
                    169: .B >>
                    170: are not implemented.
                    171: .PP
                    172: The execution of commands on remote systems takes place in
                    173: an execution directory known to the uucp system.
                    174: All files required for the execution will be put into this
                    175: directory unless they already reside on that machine.
                    176: Therefore, the simple file name (without path or machine reference)
                    177: must be unique within the uux request.
                    178: The following command will NOT work:
                    179: .IP
                    180: uux "a!diff  b!/usr/dan/xyz c!/usr/dan/xyz > !xyz.diff"
                    181: .PP
                    182: but the command
                    183: .IP
                    184: uux "a!diff  a!/usr/dan/xyz c!/usr/dan/xyz > !xyz.diff"
                    185: .PP
                    186: will work.
                    187: (If \fIdiff\fR is a permitted command.)
                    188: .SH BUGS
                    189: Protected files and files that are in protected directories
                    190: that are owned by the requestor can be sent in commands using
                    191: .IR uux .
                    192: However, if the requestor is root, and the directory is not searchable
                    193: by "other" or the file is not readable by "other",
                    194: the request will fail due to a bug in setuid().
                    195: .\"    @(#)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.