components/ksh93/files/sh.1
author Norm Jacobs <Norm.Jacobs@Oracle.COM>
Thu, 04 Oct 2012 11:04:27 -0700
branchs11-update
changeset 2364 99204a9d164c
parent 789 5f074ca23733
child 5799 3115259fd185
permissions -rw-r--r--
7202614 gdbm, hal-cups-utils, psutil, pycups, quagga needs TPNO data
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
789
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     1
'\" te
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     2
.\" Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     3
.\" Copyright 1989 AT&T
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     4
.\" Portions Copyright (c) 1992, X/Open Company Limited All Rights Reserved
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     5
.\"  Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to reproduce portions of its copyrighted documentation. Original documentation from The Open Group can be obtained online at  http://www.opengroup.org/bookstore/.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     6
.\" The Institute of Electrical and Electronics Engineers and The Open Group, have given us permission to reprint portions of their documentation. In the following statement, the phrase "this text" refers to portions of the system documentation. Portions of this text are reprinted and reproduced in electronic form in the Sun OS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between these versions and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html.  This notice shall appear on any product containing this material. 
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     7
.TH sh 1 "12 Jul 2011" "SunOS 5.11" "User Commands"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     8
.SH NAME
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
     9
sh, jsh \- standard and job control shell and command interpreter
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    10
.SH SYNOPSIS
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    11
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    12
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    13
\fB/usr/bin/sh\fR  [\fB-acefhiknprstuvx\fR] [\fIargument\fR]...
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    14
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    15
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    16
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    17
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    18
\fB/usr/xpg4/bin/sh\fR  [\(+- abCefhikmnoprstuvx]
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    19
     [\(+- o \fIoption\fR]... [\fB-c\fR \fIstring\fR] [\fIarg\fR]...
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    20
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    21
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    22
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    23
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    24
\fB/usr/bin/jsh\fR  [\fB-acefhiknprstuvx\fR] [\fIargument\fR]...
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    25
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    26
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    27
.SH DESCRIPTION
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    28
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    29
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    30
The \fB/usr/bin/sh\fR utility is a command programming language that executes commands read from a terminal or a file.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    31
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    32
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    33
The \fB/usr/xpg4/bin/sh\fR utility is a standards compliant shell. This utility provides all the functionality of \fBksh88\fR(1), except in cases discussed in \fBksh88\fR(1) where differences in behavior exist.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    34
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    35
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    36
The \fBjsh\fR utility is an interface to the shell that provides all of the functionality of \fBsh\fR and enables job control (see \fBJob Control\fR section below).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    37
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    38
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    39
Arguments to the shell are listed in the \fBInvocation\fR section below.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    40
.SS "Definitions"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    41
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    42
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    43
A \fIblank\fR is a tab or a space. A \fIname\fR is a sequence of \fBASCII\fR letters, digits, or underscores, beginning with a letter or an underscore. A \fIparameter\fR is a name, a digit, or any of the characters \fB*\fR, \fB@\fR, \fB#\fR, \fB?\fR, \fB\(mi\fR, \fB$\fR, and \fB!\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    44
.SH USAGE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    45
.SS "Commands"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    46
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    47
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    48
A \fIsimple-command\fR is a sequence of non-blank \fIword\fRs separated by \fIblank\fRs. The first \fIword\fR specifies the name of the command to be executed. Except as specified below, the remaining \fIword\fRs are passed as arguments to the invoked command. The command name is passed as argument 0 (see \fBexec\fR(2)). The \fIvalue\fR of a \fIsimple-command\fR is its exit status if it terminates normally, or (octal) \fB200\fR+\fIstatus\fR if it terminates abnormally. See \fBsignal.h\fR(3HEAD) for a list of status values.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    49
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    50
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    51
A \fIpipeline\fR is a sequence of one or more \fIcommand\fRs separated by \fB|\fR. The standard output of each \fIcommand\fR but the last is connected by a \fBpipe\fR(2) to the standard input of the next \fIcommand\fR. Each \fIcommand\fR is run as a separate process. The shell waits for the last \fIcommand\fR to terminate. The exit status of a \fIpipeline\fR is the exit status of the last command in the \fIpipeline\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    52
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    53
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    54
A \fIlist\fR is a sequence of one or more \fIpipeline\fRs separated by \fB;\fR, \fB&\fR, \fB&&\fR, or \fB|\||\fR, and optionally terminated by \fB;\fR or \fB&\fR\&. Of these four symbols, \fB;\fR and \fB&\fR have equal precedence, which is lower than that of \fB&&\fR and \fB|\||\fR. The symbols \fB&&\fR and \fB|\||\fR also have equal precedence. A semicolon (\fB;\fR) causes sequential execution of the preceding \fIpipeline\fR, that is, the shell waits for the \fIpipeline\fR to finish before executing any commands following the semicolon. An ampersand (\fB&\fR) causes asynchronous execution of the preceding pipeline, that is, the shell does \fBnot\fR wait for that pipeline to finish. The symbol \fB&&\fR (\|\fB|\||\fR) causes the \fIlist\fR following it to be executed only if the preceding pipeline returns a zero (non-zero) exit status. An arbitrary number of newlines can appear in a \fIlist\fR, instead of semicolons, to delimit commands.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    55
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    56
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    57
A \fIcommand\fR is either a \fIsimple-command\fR or one of the following. Unless otherwise stated, the value returned by a command is that of the last \fIsimple-command\fR executed in the command.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    58
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    59
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    60
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    61
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    62
\fB\fBfor\fR \fIname\fR [ \fBin\fR \fIword\fR .\|.\|. ] \fBdo\fR \fIlist\fR \fBdone\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    63
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    64
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    65
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    66
Each time a \fBfor\fR command is executed, \fIname\fR is set to the next \fIword\fR taken from the \fBin\fR \fIword\fR list. If \fBin\fR \fIword\fR .\|.\|. is omitted, then the \fBfor\fR command executes the \fBdo\fR \fIlist\fR once for each positional parameter that is set (see \fBParameter Substitution\fR section below). Execution ends when there are no more words in the list.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    67
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    68
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    69
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    70
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    71
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    72
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    73
\fB\fBcase\fR \fIword\fR \fBin\fR [ \fIpattern\fR [ | \fIpattern\fR ] \fB)\fR \fIlist\fR \fB;\|;\fR ] .\|.\|.  \fBesac\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    74
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    75
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    76
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    77
A \fBcase\fR command executes the \fIlist\fR associated with the first \fIpattern\fR that matches \fIword\fR. The form of the patterns is the same as that used for file-name generation (see \fBFile Name Generation\fR section), except that a slash, a leading dot, or a dot immediately following a slash need not be matched explicitly.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    78
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    79
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    80
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    81
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    82
\fBif\fR \fIlist\fR \fB; then\fR \fIlist\fR \fBelif\fR \fIlist\fR \fB; then\fR \fIlist\fR \fB;\fR ] .\|.\|. [ \fBelse\fR \fIlist\fR \fB;\fR ] \fBfi\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    83
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    84
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    85
The \fIlist\fR following \fBif\fR is executed and, if it returns a zero exit status, the \fIlist\fR following the first \fBthen\fR is executed. Otherwise, the \fIlist\fR following \fBelif\fR is executed and, if its value is zero, the \fIlist\fR following the next \fBthen\fR is executed. Failing that, the \fBelse\fR \fIlist\fR is executed. If no \fBelse\fR \fIlist\fR or \fBthen\fR \fIlist\fR is executed, then the \fBif\fR command returns a zero exit status.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    86
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    87
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    88
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    89
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    90
\fB\fBwhile\fR \fIlist\fR \fBdo\fR \fIlist\fR \fBdone\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    91
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    92
.RS 27n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    93
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    94
A \fBwhile\fR command repeatedly executes the \fBwhile\fR \fIlist\fR and, if the exit status of the last command in the list is zero, executes the \fBdo\fR \fIlist\fR; otherwise the loop terminates. If no commands in the \fBdo\fR \fIlist\fR are executed, then the \fBwhile\fR command returns a zero exit status; \fBuntil\fR can be used in place of \fBwhile\fR to negate the loop termination test.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    95
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    96
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    97
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    98
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
    99
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   100
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   101
\fB\fB(\fR\fIlist\fR\fB)\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   102
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   103
.RS 27n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   104
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   105
Execute \fIlist\fR in a sub-shell.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   106
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   107
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   108
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   109
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   110
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   111
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   112
\fB\fB{\fR \fIlist\fR\fB;}\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   113
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   114
.RS 27n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   115
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   116
\fIlist\fR is executed in the current (that is, parent) shell. The \fB{\fR must be followed by a space.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   117
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   118
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   119
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   120
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   121
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   122
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   123
\fB\fIname\fR \fB(\|) {\fR \fIlist\fR\fB;}\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   124
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   125
.RS 27n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   126
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   127
Define a function which is referenced by \fIname\fR. The body of the function is the \fIlist\fR of commands between \fB{\fR and \fB}\fR. The \fB{\fR must be followed by a space. Execution of functions is described below (see \fBExecution\fR section). The \fB{\fR and \fB}\fR are unnecessary if the body of the function is a \fIcommand\fR as defined above, under \fBCommands\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   128
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   129
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   130
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   131
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   132
The following words are only recognized as the first word of a command and when not quoted:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   133
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   134
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   135
\fBif  then  else  elif  fi  case  esac  for  while  until  do  done  {  }\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   136
.SS "Comments Lines"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   137
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   138
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   139
A word beginning with \fB#\fR causes that word and all the following characters up to a newline to be ignored.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   140
.SS "Command Substitution"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   141
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   142
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   143
The shell reads commands from the string between two grave accents (\fB``\fR) and the standard output from these commands can be used as all or part of a word. Trailing newlines from the standard output are removed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   144
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   145
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   146
No interpretation is done on the string before the string is read, except to remove backslashes (\fB\e\fR) used to escape other characters. Backslashes can be used to escape a grave accent (\fB`\fR) or another backslash (\fB\e\fR) and are removed before the command string is read. Escaping grave accents allows nested command substitution. If the command substitution lies within a pair of double quotes (\fB" .\|.\|.\|` .\|.\|.\|` .\|.\|.\| "\fR), a backslash used to escape a double quote (\fB\e"\fR) is removed. Otherwise, it is left intact.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   147
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   148
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   149
If a backslash is used to escape a newline character (\fB\enewline\fR), both the backslash and the newline are removed (see the later section on \fBQuoting\fR). In addition, backslashes used to escape dollar signs (\fB\e$\fR) are removed. Since no parameter substitution is done on the command string before it is read, inserting a backslash to escape a dollar sign has no effect. Backslashes that precede characters other than \fB\e\fR, \fB`\fR, \fB"\fR, \fBnewline\fR, and \fB$\fR are left intact when the command string is read.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   150
.SS "Parameter Substitution"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   151
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   152
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   153
The character \fB$\fR is used to introduce substitutable \fIparameter\fRs. There are two types of parameters, positional and keyword. If \fIparameter\fR is a digit, it is a positional parameter. Positional parameters can be assigned values by \fBset\fR. Keyword parameters (also known as variables) can be assigned values by writing:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   154
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   155
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   156
\fIname\fR\fB=\fR\fIvalue\fR [ \fIname\fR\fB=\fR\fIvalue\fR ] .\|.\|.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   157
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   158
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   159
Pattern-matching is not performed on \fIvalue\fR. There cannot be a function and a variable with the same \fIname\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   160
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   161
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   162
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   163
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   164
\fB\fB${\fR\fIparameter\fR\fB}\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   165
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   166
.RS 25n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   167
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   168
The value, if any, of the parameter is substituted. The braces are required only when \fIparameter\fR is followed by a letter, digit, or underscore that is not to be interpreted as part of its name. If \fIparameter\fR is \fB*\fR or \fB@\fR, all the positional parameters, starting with \fB$1\fR, are substituted (separated by spaces). Parameter \fB$0\fR is set from argument zero when the shell is invoked.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   169
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   170
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   171
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   172
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   173
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   174
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   175
\fB\fB${\fR\fIparameter\fR\fB:\(mi\fR\fIword\fR\fB}\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   176
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   177
.RS 25n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   178
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   179
Use Default Values. If \fIparameter\fR is unset or null, the expansion of \fIword\fR is substituted; otherwise, the value of \fIparameter\fR is substituted.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   180
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   181
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   182
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   183
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   184
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   185
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   186
\fB\fB${\fR\fIparameter\fR\fB:=\fR\fIword\fR\fB}\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   187
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   188
.RS 25n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   189
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   190
Assign Default Values. If \fIparameter\fR is unset or null, the expansion of \fIword\fR is assigned to \fIparameter\fR. In all cases, the final value of \fIparameter\fR is substituted. Only variables, not positional parameters or special parameters, can be assigned in this way.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   191
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   192
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   193
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   194
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   195
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   196
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   197
\fB\fB${\fR\fIparameter\fR\fB:?\fR\fIword\fR\fB}\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   198
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   199
.RS 25n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   200
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   201
If \fIparameter\fR is set and is non-null, substitute its value; otherwise, print \fIword\fR and exit from the shell. If \fIword\fR is omitted, the message "parameter null or not set" is printed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   202
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   203
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   204
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   205
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   206
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   207
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   208
\fB\fB${\fR\fIparameter\fR\fB:+\fR\fIword\fR\fB}\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   209
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   210
.RS 25n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   211
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   212
If \fIparameter\fR is set and is non-null, substitute \fIword\fR; otherwise substitute nothing.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   213
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   214
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   215
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   216
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   217
In the above, \fIword\fR is not evaluated unless it is to be used as the substituted string, so that, in the following example, \fBpwd\fR is executed only if \fBd\fR is not set or is null:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   218
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   219
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   220
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   221
\fBecho  ${d:\(mi`pwd`}\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   222
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   223
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   224
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   225
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   226
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   227
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   228
If the colon (\fB:\fR) is omitted from the above expressions, the shell only checks whether \fIparameter\fR is set or not.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   229
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   230
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   231
The following parameters are automatically set by the shell.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   232
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   233
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   234
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   235
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   236
\fB\fB#\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   237
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   238
.RS 8n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   239
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   240
The number of positional parameters in decimal.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   241
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   242
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   243
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   244
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   245
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   246
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   247
\fB\fB\(mi\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   248
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   249
.RS 8n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   250
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   251
Flags supplied to the shell on invocation or by the \fBset\fR command.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   252
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   253
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   254
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   255
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   256
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   257
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   258
\fB\fB?\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   259
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   260
.RS 8n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   261
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   262
The decimal value returned by the last synchronously executed command.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   263
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   264
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   265
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   266
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   267
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   268
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   269
\fB\fB$\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   270
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   271
.RS 8n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   272
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   273
The process number of this shell.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   274
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   275
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   276
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   277
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   278
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   279
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   280
\fB\fB!\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   281
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   282
.RS 8n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   283
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   284
The process number of the last background command invoked.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   285
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   286
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   287
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   288
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   289
The following parameters are used by the shell. The parameters in this section are also referred to as environment variables.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   290
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   291
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   292
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   293
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   294
\fB\fBHOME\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   295
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   296
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   297
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   298
The default argument (home directory) for the \fBcd\fR command, set to the user's login directory by \fBlogin\fR(1) from the password file (see \fBpasswd\fR(4)).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   299
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   300
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   301
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   302
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   303
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   304
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   305
\fB\fBPATH\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   306
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   307
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   308
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   309
The search path for commands (see \fBExecution\fR section below).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   310
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   311
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   312
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   313
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   314
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   315
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   316
\fB\fBCDPATH\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   317
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   318
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   319
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   320
The search path for the \fBcd\fR command.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   321
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   322
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   323
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   324
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   325
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   326
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   327
\fB\fBMAIL\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   328
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   329
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   330
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   331
If this parameter is set to the name of a mail file \fIand\fR the \fBMAILPATH\fR  parameter is not set, the shell informs the user of the arrival of mail in the specified file.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   332
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   333
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   334
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   335
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   336
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   337
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   338
\fB\fBMAILCHECK\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   339
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   340
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   341
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   342
This parameter specifies how often (in seconds) the shell checks for the arrival of mail in the files specified by the \fBMAILPATH\fR or \fBMAIL\fR parameters. The default value is \fB600\fR seconds (10 minutes). If set to 0, the shell checks before each prompt.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   343
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   344
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   345
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   346
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   347
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   348
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   349
\fB\fBMAILPATH\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   350
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   351
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   352
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   353
A colon-separated list of file names. If this parameter is set, the shell informs the user of the arrival of mail in any of the specified files. Each file name can be followed by % and a message that is e printed when the modification time changes. The default message is, \fByou have mail\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   354
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   355
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   356
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   357
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   358
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   359
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   360
\fB\fBPS1\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   361
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   362
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   363
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   364
Primary prompt string, by default " $ \|".
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   365
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   366
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   367
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   368
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   369
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   370
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   371
\fB\fBPS2\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   372
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   373
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   374
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   375
Secondary prompt string, by default " > \|".
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   376
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   377
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   378
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   379
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   380
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   381
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   382
\fB\fBIFS\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   383
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   384
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   385
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   386
Internal field separators, normally \fBspace\fR, \fBtab\fR, and \fBnewline\fR (see \fBBlank Interpretation\fR section).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   387
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   388
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   389
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   390
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   391
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   392
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   393
\fB\fBSHACCT\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   394
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   395
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   396
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   397
If this parameter is set to the name of a file writable by the user, the shell writes an accounting record in the file for each shell procedure executed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   398
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   399
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   400
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   401
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   402
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   403
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   404
\fB\fBSHELL\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   405
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   406
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   407
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   408
When the shell is invoked, it scans the environment (see \fBEnvironment\fR section below) for this name.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   409
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   410
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   411
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   412
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   413
See \fBenviron\fR(5) for descriptions of the following environment variables that affect the execution of \fBsh\fR: \fBLC_CTYPE\fR and \fBLC_MESSAGES\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   414
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   415
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   416
The shell gives default values to \fBPATH\fR, \fBPS1\fR, \fBPS2\fR, \fBMAILCHECK\fR, and \fBIFS\fR. Default values for \fBHOME\fR and \fBMAIL\fR are set by \fBlogin\fR(1).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   417
.SS "Blank Interpretation"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   418
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   419
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   420
After parameter and command substitution, the results of substitution are scanned for internal field separator characters (those found in \fBIFS\fR) and split into distinct arguments where such characters are found. Explicit null arguments (\fB""\fR or \fB\&''\fR) are retained. Implicit null arguments (those resulting from \fIparameter\fRs that have no values) are removed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   421
.SS "Input/Output Redirection"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   422
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   423
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   424
A command's input and output can be redirected using a special notation interpreted by the shell. The following can appear anywhere in a \fIsimple-command\fR or can precede or follow a \fIcommand\fR and are \fBnot\fR passed on as arguments to the invoked command. \fBNote:\fR Parameter and command substitution occurs before \fIword\fR or \fIdigit\fR is used.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   425
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   426
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   427
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   428
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   429
\fB\fB<\fR\fIword\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   430
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   431
.RS 16n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   432
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   433
Use file \fIword\fR as standard input (file descriptor 0).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   434
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   435
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   436
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   437
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   438
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   439
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   440
\fB\fB>\fR\fIword\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   441
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   442
.RS 16n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   443
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   444
Use file \fIword\fR as standard output (file descriptor 1). If the file does not exist, it is created; otherwise, it is truncated to zero length.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   445
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   446
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   447
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   448
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   449
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   450
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   451
\fB\fB>>\fR\fIword\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   452
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   453
.RS 16n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   454
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   455
Use file \fIword\fR as standard output. If the file exists, output is appended to it by first seeking to the \fBEOF\fR. Otherwise, the file is created.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   456
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   457
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   458
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   459
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   460
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   461
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   462
\fB\fB<\|>\fR\fIword\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   463
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   464
.RS 16n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   465
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   466
Open file \fIword\fR for reading and writing as standard input.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   467
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   468
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   469
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   470
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   471
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   472
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   473
\fB\fB<<\fR[\fB\(mi\fR]\fIword\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   474
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   475
.RS 16n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   476
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   477
After parameter and command substitution is done on \fIword\fR, the shell input is read up to the first line that literally matches the resulting \fIword\fR, or to an \fBEOF\fR. If, however, the hyphen (\fB\(mi\fR) is appended to \fB<<\fR:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   478
.RS +4
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   479
.TP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   480
1.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   481
leading tabs are stripped from \fIword\fR before the shell input is read (but after parameter and command substitution is done on \fIword\fR);
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   482
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   483
.RS +4
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   484
.TP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   485
2.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   486
leading tabs are stripped from the shell input as it is read and before each line is compared with \fIword\fR; and
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   487
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   488
.RS +4
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   489
.TP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   490
3.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   491
shell input is read up to the first line that literally matches the resulting \fIword\fR, or to an \fBEOF\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   492
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   493
If any character of \fIword\fR is quoted (see \fBQuoting\fR section later), no additional processing is done to the shell input. If no characters of \fIword\fR are quoted:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   494
.RS +4
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   495
.TP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   496
1.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   497
parameter and command substitution occurs;
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   498
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   499
.RS +4
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   500
.TP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   501
2.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   502
(escaped) \fB\enewline\fRs are removed; and
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   503
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   504
.RS +4
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   505
.TP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   506
3.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   507
\fB\e\fR must be used to quote the characters \fB\e\fR, \fB$\fR, and \fB`\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   508
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   509
The resulting document becomes the standard input.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   510
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   511
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   512
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   513
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   514
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   515
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   516
\fB\fB<&\fR\fIdigit\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   517
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   518
.RS 16n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   519
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   520
Use the file associated with file descriptor \fIdigit\fR as standard input. Similarly for the standard output using \fB>&\fR\fIdigit\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   521
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   522
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   523
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   524
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   525
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   526
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   527
\fB\fB<&\(mi\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   528
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   529
.RS 16n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   530
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   531
The standard input is closed. Similarly for the standard output using \fB>&\(mi\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   532
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   533
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   534
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   535
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   536
If any of the above is preceded by a digit, the file descriptor which is associated with the file is that specified by the digit (instead of the default \fB0\fR or \fB1\fR). For example:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   537
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   538
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   539
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   540
\fB\&... 2>&1\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   541
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   542
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   543
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   544
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   545
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   546
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   547
associates file descriptor 2 with the file currently associated with file descriptor 1.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   548
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   549
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   550
The order in which redirections are specified is significant. The shell evaluates redirections left-to-right. For example:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   551
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   552
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   553
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   554
\fB\&... 1>\fIxxx\fR 2>&1\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   555
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   556
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   557
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   558
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   559
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   560
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   561
first associates file descriptor 1 with file \fIxxx\fR. It associates file descriptor 2 with the file associated with file descriptor 1 (that is, \fIxxx\fR). If the order of redirections were reversed, file descriptor 2 would be associated with the terminal (assuming file descriptor 1 had been) and file descriptor 1 would be associated with file \fIxxx\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   562
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   563
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   564
Using the terminology introduced on the first page, under \fBCommands\fR, if a \fIcommand\fR is composed of several \fIsimple commands\fR, redirection is evaluated for the entire \fIcommand\fR before it is evaluated for each \fIsimple command\fR. That is, the shell evaluates redirection for the entire \fIlist\fR, then each \fIpipeline\fR within the \fIlist\fR, then each \fIcommand\fR within each \fIpipeline\fR, then each \fIlist\fR within each \fIcommand\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   565
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   566
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   567
If a command is followed by \fB&\fR, the default standard input for the command is the empty file, \fB/dev/null\fR. Otherwise, the environment for the execution of a command contains the file descriptors of the invoking shell as modified by input/output specifications.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   568
.SS "File Name Generation"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   569
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   570
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   571
Before a command is executed, each command \fIword\fR is scanned for the characters \fB*\fR, \fB?\fR, and \fB[\fR. If one of these characters appears the word is regarded as a \fIpattern\fR. The word is replaced with alphabetically sorted file names that match the pattern. If no file name is found that matches the pattern, the word is left unchanged. The character \fB\&.\fR at the start of a file name or immediately following a \fB/\fR, as well as the character \fB/\fR itself, must be matched explicitly.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   572
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   573
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   574
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   575
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   576
\fB\fB*\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   577
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   578
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   579
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   580
Matches any string, including the null string.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   581
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   582
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   583
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   584
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   585
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   586
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   587
\fB\fB?\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   588
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   589
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   590
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   591
Matches any single character.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   592
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   593
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   594
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   595
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   596
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   597
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   598
\fB\fB[\fR.\|.\|.\fB]\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   599
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   600
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   601
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   602
Matches any one of the enclosed characters. A pair of characters separated by \fB\(mi\fR matches any character lexically between the pair, inclusive. If the first character following the opening \fB[\fR is a \fB!\fR, any character not enclosed is matched.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   603
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   604
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   605
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   606
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   607
Notice that all quoted characters (see below) must be matched explicitly in a filename.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   608
.SS "Quoting"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   609
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   610
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   611
The following characters have a special meaning to the shell and cause termination of a word unless quoted:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   612
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   613
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   614
\fB;  &  (  )  |  ^  <  >  newline  space  tab\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   615
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   616
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   617
A character can be \fIquoted\fR (that is, made to stand for itself) by preceding it with a backslash (\fB\e\fR) or inserting it between a pair of quote marks (\fB\|'\|'\fR or \fB""\fR). During processing, the shell can quote certain characters to prevent them from taking on a special meaning. Backslashes used to quote a single character are removed from the word before the command is executed. The pair \fB\enewline\fR is removed from a word before command and parameter substitution.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   618
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   619
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   620
All characters enclosed between a pair of single quote marks (\fB\|'\|'\fR), except a single quote, are quoted by the shell. Backslash has no special meaning inside a pair of single quotes. A single quote can be quoted inside a pair of double quote marks (for example, \fB"\|'"\fR), but a single quote can not be quoted inside a pair of single quotes.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   621
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   622
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   623
Inside a pair of double quote marks (\fB""\fR), parameter and command substitution occurs and the shell quotes the results to avoid blank interpretation and file name generation. If \fB$*\fR is within a pair of double quotes, the positional parameters are substituted and quoted, separated by quoted spaces (\fB"$1 \|$2\fR \|.\|.\|.\fB"\fR). However, if \fB$@\fR is within a pair of double quotes, the positional parameters are substituted and quoted, separated by unquoted spaces (\fB"$1"\|"$2"\fR \| .\|.\|. ). \fB\e\fR quotes the characters \fB\e\fR, \fB`\fR, \fB,\fR (comma), and \fB$\fR. The pair \fB\enewline\fR is removed before parameter and command substitution. If a backslash precedes characters other than \fB\e\fR, \fB`\fR, \fB,\fR (comma), \fB$\fR, and newline, then the backslash itself is quoted by the shell.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   624
.SS "Prompting"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   625
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   626
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   627
When used interactively, the shell prompts with the value of \fBPS1\fR before reading a command. If at any time a newline is typed and further input is needed to complete a command, the secondary prompt (that is, the value of \fBPS2\fR) is issued.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   628
.SS "Environment"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   629
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   630
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   631
The \fIenvironment\fR (see \fBenviron\fR(5)) is a list of name-value pairs that is passed to an executed program in the same way as a normal argument list. The shell interacts with the environment in several ways. On invocation, the shell scans the environment and creates a parameter for each name found, giving it the corresponding value. If the user modifies the value of any of these parameters or creates new parameters, none of these affects the environment unless the \fBexport\fR command is used to bind the shell's parameter to the environment (see also \fBset\fR \fB-a\fR). A parameter can be removed from the environment with the \fBunset\fR command. The environment seen by any executed command is thus composed of any unmodified name-value pairs originally inherited by the shell, minus any pairs removed by \fBunset\fR, plus any modifications or additions, all of which must be noted in \fBexport\fR commands.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   632
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   633
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   634
The environment for any \fIsimple-command\fR can be augmented by prefixing it with one or more assignments to parameters. Thus:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   635
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   636
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   637
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   638
\fBTERM=450  \fIcommand\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   639
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   640
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   641
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   642
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   643
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   644
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   645
and
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   646
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   647
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   648
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   649
\fB(export TERM; TERM=450;   \fIcommand\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   650
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   651
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   652
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   653
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   654
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   655
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   656
are equivalent as far as the execution of \fIcommand\fR is concerned if \fIcommand\fR is not a Special Command. If \fIcommand\fR is a Special Command, then
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   657
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   658
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   659
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   660
\fBTERM=450   \fIcommand\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   661
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   662
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   663
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   664
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   665
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   666
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   667
modifies the \fBTERM\fR variable in the current shell.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   668
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   669
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   670
If the \fB-k\fR flag is set, \fIall\fR keyword arguments are placed in the environment, even if they occur after the command name. The following example first prints \fBa=b c\fR and \fBc\fR:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   671
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   672
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   673
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   674
\fBecho a=b  c
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   675
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   676
a=b  c
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   677
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   678
set  \(mik
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   679
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   680
echo a=b  c
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   681
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   682
c\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   683
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   684
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   685
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   686
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   687
.SS "Signals"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   688
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   689
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   690
The \fBINTERRUPT\fR and \fBQUIT\fR signals for an invoked command are ignored if the command is followed by \fB&\fR\&. Otherwise, signals have the values inherited by the shell from its parent, with the exception of signal 11 (but see also the \fBtrap\fR command below).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   691
.SS "Execution"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   692
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   693
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   694
Each time a command is executed, the command substitution, parameter substitution, blank interpretation, input/output redirection, and filename generation listed above are carried out. If the command name matches the name of a defined function, the function is executed in the shell process (note how this differs from the execution of shell script files, which require a sub-shell for invocation). If the command name does not match the name of a defined function, but matches one of the \fBSpecial Commands\fR listed below, it is executed in the shell process.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   695
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   696
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   697
The positional parameters \fB$1\fR, \fB$2\fR, .\|.\|. are set to the arguments of the function. If the command name matches neither a \fBSpecial Command\fR nor the name of a defined function, a new process is created and an attempt is made to execute the command via \fBexec\fR(2).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   698
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   699
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   700
The shell parameter \fBPATH\fR defines the search path for the directory containing the command. Alternative directory names are separated by a colon (\fB:\fR). The default path is \fB/usr/bin\fR. The current directory is specified by a null path name, which can appear immediately after the equal sign, between two colon delimiters anywhere in the path list, or at the end of the path list. If the command name contains a \fB/\fR the search path is not used. Otherwise, each directory in the path is searched for an executable file. If the file has execute permission but is not an \fBa.out\fR file, it is assumed to be a file containing shell commands. A sub-shell is spawned to read it. A parenthesized command is also executed in a sub-shell.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   701
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   702
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   703
The location in the search path where a command was found is remembered by the shell (to help avoid unnecessary \fIexec\fRs later). If the command was found in a relative directory, its location must be re-determined whenever the current directory changes. The shell forgets all remembered locations whenever the \fBPATH\fR variable is changed or the \fBhash\fR \fB-r\fR command is executed (see below).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   704
.SS "Special Commands"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   705
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   706
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   707
Input/output redirection is now permitted for these commands. File descriptor 1 is the default output location. When Job Control is enabled, additional \fBSpecial Commands\fR are added to the shell's environment (see \fBJob Control\fR section below).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   708
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   709
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   710
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   711
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   712
\fB\fB:\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   713
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   714
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   715
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   716
No effect; the command does nothing. A zero exit code is returned.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   717
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   718
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   719
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   720
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   721
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   722
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   723
\fB\fB\&.\|\fR \fIfilename\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   724
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   725
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   726
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   727
Read and execute commands from \fIfilename\fR and return. The search path specified by \fBPATH\fR is used to find the directory containing \fIfilename\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   728
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   729
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   730
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   731
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   732
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   733
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   734
\fB\fBbg\fR [\fB%\fR\fIjobid .\|.\|.\fR]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   735
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   736
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   737
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   738
When Job Control is enabled, the \fBbg\fR command is added to the user's environment to manipulate jobs. Resumes the execution of a stopped job in the background. If \fB%\fR\fIjobid\fR is omitted the current job is assumed. (See \fBJob Control\fR section below for more detail.)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   739
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   740
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   741
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   742
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   743
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   744
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   745
\fB\fBbreak\fR [ \fIn\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   746
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   747
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   748
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   749
Exit from the enclosing \fBfor\fR or \fBwhile\fR loop, if any. If \fIn\fR is specified, break \fIn\fR levels.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   750
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   751
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   752
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   753
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   754
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   755
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   756
\fB\fBcd\fR [ \fIargument\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   757
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   758
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   759
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   760
Change the current directory to \fIargument\fR. The shell parameter \fBHOME\fR is the default \fIargument\fR. The shell parameter \fBCDPATH\fR defines the search path for the directory containing \fIargument\fR. Alternative directory names are separated by a colon (\fB:\fR). The default path is \fB<null>\fR (specifying the current directory). \fBNote:\fR The current directory is specified by a null path name, which can appear immediately after the equal sign or between the colon delimiters anywhere else in the path list. If \fIargument\fR begins with a \fB/\fR the search path is not used. Otherwise, each directory in the path is searched for \fIargument\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   761
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   762
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   763
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   764
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   765
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   766
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   767
\fB\fBchdir\fR [ \fIdir\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   768
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   769
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   770
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   771
\fBchdir\fR changes the shell's working directory to directory \fIdir\fR. If no argument is given, change to the home directory of the user. If \fIdir\fR is a relative pathname not found in the current directory, check for it in those directories listed in the \fBCDPATH\fR variable. If \fIdir\fR is the name of a shell variable whose value starts with a \fB/\fR, change to the directory named by that value.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   772
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   773
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   774
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   775
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   776
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   777
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   778
\fB\fBcontinue\fR [ \fIn\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   779
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   780
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   781
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   782
Resume the next iteration of the enclosing \fBfor\fR or \fBwhile\fR loop. If \fIn\fR is specified, resume at the \fIn\fR-th enclosing loop.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   783
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   784
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   785
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   786
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   787
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   788
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   789
\fB\fBecho\fR [ \fIarguments\fR .\|.\|. ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   790
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   791
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   792
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   793
The words in \fIarguments\fR are written to the shell's standard output, separated by space characters. See \fBecho\fR(1) for fuller usage and description.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   794
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   795
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   796
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   797
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   798
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   799
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   800
\fB\fBeval\fR [ \fIargument\fR .\|.\|. ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   801
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   802
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   803
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   804
The arguments are read as input to the shell and the resulting command(s) executed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   805
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   806
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   807
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   808
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   809
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   810
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   811
\fB\fBexec\fR [ \fIargument\fR .\|.\|. ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   812
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   813
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   814
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   815
The command specified by the arguments is executed in place of this shell without creating a new process. Input/output arguments can appear and, if no other arguments are given, cause the shell input/output to be modified.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   816
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   817
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   818
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   819
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   820
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   821
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   822
\fB\fBexit\fR [ \fIn\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   823
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   824
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   825
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   826
Causes the calling shell or shell script to exit with the exit status specified by \fIn\fR. If \fIn\fR is omitted the exit status is that of the last command executed (an \fBEOF\fR also causes the shell to exit.)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   827
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   828
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   829
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   830
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   831
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   832
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   833
\fB\fBexport\fR [ \fIname\fR .\|.\|. ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   834
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   835
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   836
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   837
The given \fIname\fRs are marked for automatic export to the \fIenvironment\fR of subsequently executed commands. If no arguments are given, variable names that have been marked for export during the current shell's execution are listed. (Variable names exported from a parent shell are listed only if they have been exported again during the current shell's execution.) Function names are \fBnot\fR exported.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   838
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   839
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   840
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   841
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   842
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   843
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   844
\fB\fBfg\fR [\fB%\fR\fIjobid .\|.\|.\fR]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   845
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   846
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   847
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   848
When Job Control is enabled, the \fBfg\fR command is added to the user's environment to manipulate jobs. This command resumes the execution of a stopped job in the foreground and also moves an executing background job into the foreground. If \fB%\fR\fIjobid\fR is omitted, the current job is assumed. (See \fBJob Control\fR section below for more detail.)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   849
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   850
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   851
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   852
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   853
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   854
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   855
\fB\fBgetopts\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   856
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   857
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   858
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   859
Use in shell scripts to support command syntax standards (see \fBIntro\fR(1)). This command parses positional parameters and checks for legal options. See \fBgetoptcvt\fR(1) for usage and description.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   860
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   861
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   862
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   863
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   864
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   865
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   866
\fB\fBhash\fR [ \fB-r\fR ] [ \fIname\fR .\|.\|. ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   867
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   868
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   869
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   870
For each \fIname\fR, the location in the search path of the command specified by \fIname\fR is determined and remembered by the shell. The \fB-r\fR option causes the shell to forget all remembered locations. If no arguments are given, information about remembered commands is presented. \fIHits\fR is the number of times a command has been invoked by the shell process. \fICost\fR is a measure of the work required to locate a command in the search path. If a command is found in a "relative" directory in the search path, after changing to that directory, the stored location of that command is recalculated. Commands for which this are done are indicated by an asterisk (\fB*\fR) adjacent to the \fIhits\fR information. \fICost\fR is incremented when the recalculation is done.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   871
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   872
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   873
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   874
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   875
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   876
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   877
\fB\fBjobs\fR [\fB\fR\fB-p\fR\fB|\fR\fB-l\fR] [\fB%\fR\fIjobid ...\fR]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   878
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   879
.br
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   880
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   881
\fB\fBjobs\fR \fB-x\fR \fIcommand\fR [\fIarguments\fR]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   882
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   883
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   884
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   885
Reports all jobs that are stopped or executing in the background. If \fB%\fR\fIjobid\fR is omitted, all jobs that are stopped or running in the background are reported. (See \fBJob Control\fR section below for more detail.)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   886
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   887
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   888
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   889
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   890
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   891
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   892
\fB\fBkill\fR [ \fB-\fR\fIsig\fR ] \fB%\fR\fIjob\fR .\|.\|.\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   893
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   894
.br
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   895
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   896
\fB\fBkill\fR \fB-l\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   897
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   898
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   899
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   900
Sends either the \fBTERM\fR (terminate) signal or the specified signal to the specified jobs or processes. Signals are either given by number or by names (as given in \fBsignal.h\fR(3HEAD) stripped of the prefix "SIG" with the exception that \fBSIGCHD\fR is named \fBCHLD\fR). If the signal being sent is \fBTERM\fR (terminate) or \fBHUP\fR (hangup), then the job or process is sent a \fBCONT\fR (continue) signal if it is stopped. The argument \fIjob\fR can be the process id of a process that is not a member of one of the active jobs. See \fBJob Control\fR section below for a description of the format of \fIjob\fR. In the second form, \fBkill\fR \fB-l\fR, the signal numbers and names are listed. (See \fBkill\fR(1)).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   901
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   902
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   903
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   904
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   905
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   906
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   907
\fB\fBlogin\fR [ \fIargument\fR .\|.\|. ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   908
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   909
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   910
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   911
Equivalent to `\fBexec\fR \fBlogin\fR \fIargument\fR.\|.\|.\|.' See \fBlogin\fR(1) for usage and description.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   912
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   913
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   914
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   915
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   916
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   917
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   918
\fB\fBnewgrp\fR [ \fIargument\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   919
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   920
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   921
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   922
Equivalent to \fBexec\fR \fBnewgrp\fR \fIargument\fR. See \fBnewgrp\fR(1) for usage and description.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   923
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   924
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   925
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   926
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   927
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   928
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   929
\fB\fBpwd\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   930
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   931
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   932
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   933
Print the current working directory. See \fBpwd\fR(1) for usage and description.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   934
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   935
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   936
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   937
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   938
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   939
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   940
\fB\fBread\fR \fIname\fR .\|.\|.\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   941
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   942
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   943
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   944
One line is read from the standard input and, using the internal field separator, \fBIFS\fR (normally space or tab), to delimit word boundaries, the first word is assigned to the first \fIname\fR, the second word to the second \fIname\fR, and so forth, with leftover words assigned to the last \fIname\fR. Lines can be continued using \fB\enewline\fR\&. Characters other than \fBnewline\fR can be quoted by preceding them with a backslash. These backslashes are removed before words are assigned to \fInames\fR, and no interpretation is done on the character that follows the backslash. The return code is \fB0\fR, unless an \fBEOF\fR is encountered.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   945
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   946
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   947
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   948
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   949
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   950
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   951
\fB\fBreadonly\fR [ \fIname\fR .\|.\|. ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   952
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   953
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   954
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   955
The given \fIname\fRs are marked \fBreadonly\fR and the values of the these \fIname\fRs can not be changed by subsequent assignment. If no arguments are given, a list of all \fBreadonly\fR names is printed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   956
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   957
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   958
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   959
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   960
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   961
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   962
\fB\fBreturn\fR [ \fIn\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   963
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   964
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   965
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   966
Causes a function to exit with the return value specified by \fIn\fR. If \fIn\fR is omitted, the return status is that of the last command executed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   967
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   968
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   969
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   970
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   971
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   972
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   973
\fB\fBset\fR [ \fB-aefhkntuvx\fR [ \fIargument\fR .\|.\|. ] ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   974
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   975
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   976
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   977
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   978
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   979
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   980
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   981
\fB\fB-a\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   982
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   983
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   984
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   985
Mark variables which are modified or created for export.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   986
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   987
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   988
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   989
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   990
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   991
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   992
\fB\fB-e\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   993
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   994
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   995
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   996
Exit immediately if a command exits with a non-zero exit status.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   997
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   998
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
   999
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1000
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1001
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1002
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1003
\fB\fB-f\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1004
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1005
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1006
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1007
Disable file name generation.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1008
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1009
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1010
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1011
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1012
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1013
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1014
\fB\fB-h\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1015
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1016
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1017
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1018
Locate and remember function commands as functions are defined (function commands are normally located when the function is executed).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1019
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1020
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1021
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1022
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1023
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1024
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1025
\fB\fB-k\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1026
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1027
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1028
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1029
All keyword arguments are placed in the environment for a command, not just those that precede the command name.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1030
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1031
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1032
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1033
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1034
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1035
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1036
\fB\fB-n\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1037
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1038
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1039
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1040
Read commands but do not execute them.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1041
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1042
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1043
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1044
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1045
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1046
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1047
\fB\fB-t\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1048
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1049
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1050
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1051
Exit after reading and executing one command.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1052
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1053
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1054
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1055
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1056
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1057
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1058
\fB\fB-u\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1059
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1060
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1061
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1062
Treat unset variables as an error when substituting.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1063
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1064
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1065
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1066
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1067
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1068
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1069
\fB\fB-v\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1070
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1071
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1072
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1073
Print shell input lines as they are read.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1074
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1075
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1076
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1077
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1078
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1079
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1080
\fB\fB-x\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1081
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1082
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1083
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1084
Print commands and their arguments as they are executed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1085
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1086
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1087
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1088
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1089
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1090
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1091
\fB\fB-\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1092
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1093
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1094
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1095
Do not change any of the flags; useful in setting \fB$1\fR to \fB\(mi\fR\&.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1096
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1097
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1098
Using \fB+\fR rather than \fB\(mi\fR causes these flags to be turned off. These flags can also be used upon invocation of the shell. The current set of flags can be found in \fB$\(mi\fR. The remaining arguments are positional parameters and are assigned, in order, to \fB$1\fR, \fB$2\fR, .\|.\|. If no arguments are given, the values of all names are printed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1099
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1100
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1101
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1102
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1103
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1104
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1105
\fB\fBshift\fR [ \fIn\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1106
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1107
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1108
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1109
The positional parameters from \fB$\fR\fIn\fR\fB+1\fR .\|.\|. are renamed \fB$1\fR .\|.\|. . If \fIn\fR is not given, it is assumed to be 1.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1110
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1111
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1112
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1113
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1114
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1115
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1116
\fB\fBstop\fR \fIpid .\|.\|.\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1117
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1118
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1119
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1120
Halt execution of the process number \fIpid\fR. (see \fBps\fR(1)).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1121
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1122
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1123
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1124
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1125
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1126
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1127
\fB\fBsuspend\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1128
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1129
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1130
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1131
Stops the execution of the current shell (but not if it is the login shell).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1132
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1133
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1134
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1135
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1136
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1137
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1138
\fB\fBtest\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1139
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1140
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1141
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1142
Evaluate conditional expressions. See \fBtest\fR(1) for usage and description.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1143
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1144
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1145
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1146
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1147
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1148
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1149
\fB\fBtimes\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1150
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1151
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1152
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1153
Print the accumulated user and system times for processes run from the shell.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1154
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1155
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1156
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1157
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1158
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1159
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1160
\fB\fBtrap\fR [ \fIargument\fR \fIn\fR [ \fIn2\fR .\|.\|. ]]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1161
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1162
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1163
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1164
The command \fIargument\fR is to be read and executed when the shell receives numeric or symbolic signal(s) (\fIn\fR). (\fBNote:\fR \fIargument\fR is scanned once when the trap is set and once when the trap is taken.) Trap commands are executed in order of signal number or corresponding symbolic names. Any attempt to set a trap on a signal that was ignored on entry to the current shell is ineffective. An attempt to trap on signal 11 (memory fault) produces an error. If \fIargument\fR is absent, all trap(s) \fIn\fR are reset to their original values. If \fIargument\fR is the null string, this signal is ignored by the shell and by the commands it invokes. If \fIn\fR is 0, the command \fIargument\fR is executed on exit from the shell. The \fBtrap\fR command with no arguments prints a list of commands associated with each signal number.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1165
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1166
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1167
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1168
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1169
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1170
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1171
\fB\fBtype\fR [ \fIname\fR .\|.\|. ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1172
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1173
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1174
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1175
For each \fIname\fR, indicate how it would be interpreted if used as a command name.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1176
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1177
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1178
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1179
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1180
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1181
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1182
\fB\fBulimit\fR [ [\fB-HS\fR] [\fB-a\fR | \fB-cdfnstv\fR] ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1183
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1184
.br
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1185
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1186
\fB\fBulimit\fR [ [\fB-HS\fR] [\fB-c\fR | \fB-d\fR | \fB-f\fR | \fB-n\fR | \fB-s\fR | \fB-t\fR | \fB-v\fR] ] \fBlimit\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1187
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1188
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1189
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1190
\fBulimit\fR prints or sets hard or soft resource limits. These limits are described in \fBgetrlimit\fR(2).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1191
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1192
If \fIlimit\fR is not present, \fBulimit\fR prints the specified limits. Any number of limits can be printed at one time. The \fB-a\fR option prints all limits.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1193
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1194
If \fIlimit\fR is present, \fBulimit\fR sets the specified limit to \fIlimit\fR. The string \fBunlimited\fR requests that the current limit, if any, be removed. Any user can set a soft limit  to any value less than or equal to  the hard limit. Any user can lower a hard limit.  Only a  user with appropriate privileges can raise or remove a hard limit.  See \fBgetrlimit\fR(2).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1195
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1196
The \fB-H\fR option specifies a hard limit. The \fB-S\fR option specifies a soft limit. If neither option is specified, \fBulimit\fR sets both limits and print the soft limit.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1197
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1198
The following options specify the resource whose limits are to be printed or set. If no option is specified, the file size limit is printed or set.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1199
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1200
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1201
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1202
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1203
\fB\fB-c\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1204
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1205
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1206
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1207
maximum core file size (in 512-byte blocks)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1208
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1209
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1210
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1211
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1212
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1213
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1214
\fB\fB-d\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1215
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1216
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1217
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1218
maximum size of data segment or heap (in kbytes)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1219
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1220
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1221
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1222
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1223
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1224
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1225
\fB\fB-f\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1226
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1227
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1228
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1229
maximum file size (in 512-byte blocks)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1230
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1231
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1232
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1233
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1234
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1235
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1236
\fB\fB-n\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1237
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1238
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1239
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1240
maximum file descriptor plus 1
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1241
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1242
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1243
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1244
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1245
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1246
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1247
\fB\fB-s\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1248
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1249
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1250
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1251
maximum size of stack segment (in kbytes)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1252
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1253
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1254
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1255
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1256
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1257
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1258
\fB\fB-t\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1259
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1260
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1261
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1262
maximum CPU time (in seconds)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1263
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1264
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1265
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1266
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1267
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1268
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1269
\fB\fB-v\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1270
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1271
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1272
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1273
maximum size of virtual memory (in kbytes)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1274
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1275
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1276
Run the \fBsysdef\fR(1M) command to obtain the maximum possible limits for your system. The values reported are in hexadecimal, but can be translated into decimal numbers using the \fBbc\fR(1) utility. See \fBswap\fR(1M).)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1277
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1278
As an example of \fBulimit\fR, to limit the size of a core file dump to 0 Megabytes, type the following:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1279
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1280
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1281
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1282
\fBulimit -c 0\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1283
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1284
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1285
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1286
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1287
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1288
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1289
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1290
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1291
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1292
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1293
\fB\fBumask\fR [ \fInnn\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1294
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1295
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1296
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1297
The user file-creation mask is set to \fInnn\fR (see \fBumask\fR(1)). If \fInnn\fR is omitted, the current value of the mask is printed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1298
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1299
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1300
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1301
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1302
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1303
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1304
\fB\fBunset\fR [ \fIname\fR .\|.\|. ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1305
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1306
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1307
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1308
For each \fIname\fR, remove the corresponding variable or function value. The variables \fBPATH\fR, \fBPS1\fR, \fBPS2\fR, \fBMAILCHECK\fR, and \fBIFS\fR cannot be unset.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1309
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1310
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1311
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1312
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1313
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1314
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1315
\fB\fBwait\fR [ \fIn\fR ]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1316
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1317
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1318
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1319
Wait for your background process whose process id is \fIn\fR and report its termination status. If \fIn\fR is omitted, all your shell's currently active background processes are waited for and the return code is zero.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1320
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1321
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1322
.SS "Invocation"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1323
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1324
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1325
If the shell is invoked through \fBexec\fR(2) and the first character of argument zero is \fB\(mi\fR, commands are initially read from \fB/etc/profile\fR and from \fB$HOME/.profile\fR, if such files exist. Thereafter, commands are read as described below, which is also the case when the shell is invoked as \fB/usr/bin/sh\fR. The flags below are interpreted by the shell on invocation only. \fBNote:\fR Unless the \fB-c\fR or \fB-s\fR flag is specified, the first argument is assumed to be the name of a file containing commands, and the remaining arguments are passed as positional parameters to that command file:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1326
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1327
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1328
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1329
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1330
\fB\fB-c\fR\fI\| string\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1331
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1332
.RS 15n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1333
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1334
If the \fB-c\fR flag is present commands are read from \fIstring\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1335
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1336
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1337
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1338
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1339
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1340
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1341
\fB\fB-i\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1342
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1343
.RS 15n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1344
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1345
If the \fB-i\fR flag is present or if the shell input and output are attached to a terminal, this shell is \fBinteractive\fR. In this case, TERMINATE is ignored (so that \fBkill 0\fR does not kill an interactive shell) and INTERRUPT is caught and ignored (so that \fBwait\fR is interruptible). In all cases, QUIT is ignored by the shell.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1346
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1347
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1348
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1349
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1350
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1351
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1352
\fB\fB-p\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1353
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1354
.RS 15n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1355
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1356
If the \fB-p\fR flag is present, the shell does not set the effective user and group IDs to the real user and group IDs.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1357
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1358
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1359
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1360
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1361
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1362
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1363
\fB\fB-r\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1364
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1365
.RS 15n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1366
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1367
If the \fB-r\fR flag is present the shell is a restricted shell (see \fBrsh\fR(1M)).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1368
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1369
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1370
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1371
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1372
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1373
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1374
\fB\fB-s\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1375
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1376
.RS 15n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1377
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1378
If the \fB-s\fR flag is present or if no arguments remain, commands are read from the standard input. Any remaining arguments specify the positional parameters. Shell output (except for \fBSpecial Commands\fR) is written to file descriptor 2.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1379
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1380
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1381
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1382
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1383
The remaining flags and arguments are described under the \fBset\fR command above.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1384
.SS "Job Control (jsh)"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1385
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1386
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1387
When the shell is invoked as \fBjsh\fR, Job Control is enabled in addition to all of the functionality described previously for \fBsh\fR. Typically, Job Control is enabled for the interactive shell only. Non-interactive shells typically do not benefit from the added functionality of Job Control.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1388
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1389
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1390
With Job Control enabled, every command or pipeline the user enters at the terminal is called a \fIjob\fR. All jobs exist in one of the following states: foreground, background, or stopped. These terms are defined as follows:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1391
.RS +4
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1392
.TP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1393
1.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1394
A job in the foreground has read and write access to the controlling terminal.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1395
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1396
.RS +4
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1397
.TP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1398
2.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1399
A job in the background is denied read access and has conditional write access to the controlling terminal (see \fBstty\fR(1)).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1400
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1401
.RS +4
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1402
.TP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1403
3.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1404
A stopped job is a job that has been placed in a suspended state, usually as a result of a \fBSIGTSTP\fR signal (see \fBsignal.h\fR(3HEAD)).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1405
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1406
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1407
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1408
Every job that the shell starts is assigned a positive integer, called a \fIjob number\fR which is tracked by the shell and is used as an identifier to indicate a specific job. Additionally, the shell keeps track of the \fIcurrent\fR and \fIprevious\fR jobs. The \fIcurrent job\fR is the most recent job to be started or restarted. The \fIprevious job\fR is the first non-current job.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1409
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1410
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1411
The acceptable syntax for a Job Identifier is of the form:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1412
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1413
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1414
\fB%\fR\fIjobid\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1415
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1416
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1417
where \fIjobid\fR can be specified in any of the following formats:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1418
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1419
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1420
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1421
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1422
\fB\fB%\fR or \fB+\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1423
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1424
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1425
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1426
For the current job.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1427
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1428
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1429
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1430
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1431
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1432
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1433
\fB\fB\(mi\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1434
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1435
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1436
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1437
For the previous job.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1438
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1439
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1440
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1441
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1442
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1443
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1444
\fB\fB?\fR\fI<string>\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1445
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1446
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1447
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1448
Specify the job for which the command line uniquely contains \fIstring\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1449
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1450
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1451
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1452
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1453
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1454
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1455
\fB\fIn\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1456
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1457
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1458
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1459
For job number \fIn\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1460
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1461
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1462
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1463
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1464
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1465
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1466
\fB\fIpref\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1467
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1468
.RS 13n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1469
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1470
Where \fIpref\fR is a unique prefix of the command name. For example, if the command \fBls\fR \fB-l\fR \fIname\fR were running in the background, it could be referred to as \fB%ls\fR. \fIpref\fR cannot contain blanks unless it is quoted.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1471
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1472
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1473
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1474
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1475
When Job Control is enabled, the following commands are added to the user's environment to manipulate jobs:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1476
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1477
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1478
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1479
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1480
\fB\fBbg\fR [\fB%\fR\fIjobid .\|.\|.\fR]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1481
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1482
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1483
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1484
Resumes the execution of a stopped job in the background. If \fB%\fR\fIjobid\fR is omitted the current job is assumed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1485
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1486
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1487
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1488
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1489
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1490
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1491
\fB\fBfg\fR [\fB%\fR\fIjobid .\|.\|.\fR]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1492
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1493
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1494
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1495
Resumes the execution of a stopped job in the foreground, also moves an executing background job into the foreground. If \fB%\fR\fIjobid\fR is omitted the current job is assumed.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1496
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1497
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1498
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1499
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1500
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1501
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1502
\fB\fBjobs\fR [\fB-p\fR|\fB-l\fR] [\fB%\fR\fIjobid .\|.\|.\fR]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1503
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1504
.br
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1505
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1506
\fB\fBjobs\fR \fB-x\fR \fBcommand\fR [\fIarguments\fR]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1507
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1508
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1509
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1510
Reports all jobs that are stopped or executing in the background. If \fB%\fR\fIjobid\fR is omitted, all jobs that are stopped or running in the background is reported. The following options modify/enhance the output of \fBjobs\fR: 
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1511
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1512
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1513
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1514
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1515
\fB\fB-l\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1516
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1517
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1518
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1519
Report the process group ID and working directory of the jobs.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1520
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1521
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1522
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1523
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1524
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1525
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1526
\fB\fB-p\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1527
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1528
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1529
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1530
Report only the process group ID of the jobs.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1531
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1532
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1533
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1534
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1535
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1536
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1537
\fB\fB-x\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1538
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1539
.RS 6n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1540
.rt  
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1541
Replace any \fIjobid\fR found in \fIcommand\fR or \fIarguments\fR with the corresponding process group ID, and then execute \fIcommand\fR passing it \fIarguments\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1542
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1543
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1544
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1545
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1546
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1547
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1548
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1549
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1550
\fB\fBkill\fR [ \fB-signal\fR ] \fB%\fR\fIjobid\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1551
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1552
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1553
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1554
Builtin version of \fBkill\fR to provide the functionality of the \fBkill\fR command for processes identified with a \fIjobid\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1555
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1556
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1557
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1558
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1559
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1560
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1561
\fB\fBstop\fR \fB%\fR\fIjobid .\|.\|.\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1562
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1563
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1564
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1565
Stops the execution of a background job(s).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1566
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1567
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1568
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1569
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1570
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1571
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1572
\fB\fBsuspend\fR\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1573
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1574
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1575
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1576
Stops the execution of the current shell (but not if it is the login shell).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1577
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1578
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1579
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1580
.ne 2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1581
.mk
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1582
.na
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1583
\fB\fBwait\fR [\fB%\fR\fIjobid .\|.\|.\fR]\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1584
.ad
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1585
.sp .6
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1586
.RS 4n
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1587
\fBwait\fR builtin accepts a job identifier. If \fB%\fR\fIjobid\fR is omitted \fBwait\fR behaves as described above under \fBSpecial Commands\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1588
.RE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1589
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1590
.SS "Large File Behavior"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1591
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1592
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1593
See \fBlargefile\fR(5) for the description of the behavior of \fBsh\fR and \fBjsh\fR when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1594
.SH EXIT STATUS
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1595
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1596
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1597
Errors detected by the shell, such as syntax errors, cause the shell to return a non-zero exit status. If the shell is being used non-interactively execution of the shell file is abandoned. Otherwise, the shell returns the exit status of the last command executed (see also the \fBexit\fR command above).
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1598
.SS "jsh Only"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1599
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1600
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1601
If the shell is invoked as \fBjsh\fR and an attempt is made to exit the shell while there are stopped jobs, the shell issues one warning:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1602
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1603
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1604
\fBThere are stopped jobs.\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1605
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1606
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1607
This is the only message. If another exit attempt is made, and there are still stopped jobs they are sent a \fBSIGHUP\fR signal from the kernel and the shell is exited.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1608
.SH FILES
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1609
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1610
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1611
\fB$HOME/.profile\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1612
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1613
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1614
\fB/dev/null\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1615
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1616
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1617
\fB/etc/profile\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1618
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1619
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1620
\fB/tmp/sh*\fR
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1621
.SH ATTRIBUTES
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1622
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1623
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1624
See \fBattributes\fR(5) for descriptions of the following attributes:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1625
.SS "/usr/bin/sh, /usr/bin/jsh"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1626
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1627
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1628
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1629
.TS
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1630
tab() box;
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1631
cw(2.75i) |cw(2.75i) 
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1632
lw(2.75i) |lw(2.75i) 
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1633
.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1634
ATTRIBUTE TYPEATTRIBUTE VALUE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1635
_
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1636
Availabilitysystem/core-os
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1637
_
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1638
CSIEnabled
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1639
.TE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1640
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1641
.SS "/usr/xpg4/bin/sh"
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1642
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1643
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1644
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1645
.TS
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1646
tab() box;
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1647
cw(2.75i) |cw(2.75i) 
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1648
lw(2.75i) |lw(2.75i) 
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1649
.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1650
ATTRIBUTE TYPEATTRIBUTE VALUE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1651
_
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1652
Availabilitysystem/core-os
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1653
_
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1654
CSIEnabled
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1655
.TE
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1656
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1657
.SH SEE ALSO
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1658
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1659
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1660
\fBIntro\fR(1), \fBbc\fR(1), \fBecho\fR(1), \fBgetoptcvt\fR(1), \fBkill\fR(1), \fBksh88\fR(1), \fBlogin\fR(1), \fBnewgrp\fR(1), \fBpfsh\fR(1), \fBpfexec\fR(1), \fBps\fR(1), \fBpwd\fR(1), \fBset\fR(1), \fBshell_builtins\fR(1), \fBstty\fR(1), \fBtest\fR(1), \fBumask\fR(1), \fBwait\fR(1), \fBrsh\fR(1M), \fBsu\fR(1M), \fBswap\fR(1M), \fBsysdef\fR(1M), \fBdup\fR(2), \fBexec\fR(2), \fBfork\fR(2), \fBgetrlimit\fR(2), \fBpipe\fR(2), \fBulimit\fR(2), \fBsetlocale\fR(3C), \fBsignal.h\fR(3HEAD), \fBpasswd\fR(4), \fBprofile\fR(4), \fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBXPG4\fR(5)
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1661
.SH WARNINGS
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1662
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1663
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1664
The use of \fBsetuid\fR shell scripts is \fBstrongly\fR discouraged.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1665
.SH NOTES
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1666
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1667
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1668
Words used for filenames in input/output redirection are not interpreted for filename generation (see \fBFile Name Generation\fR section above). For example, \fBcat file1 >a*\fR createsa file named \fBa*\fR.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1669
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1670
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1671
Because commands in pipelines are run as separate processes, variables set in a pipeline have no effect on the parent shell.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1672
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1673
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1674
If the input or the output of a \fBwhile\fR or \fBuntil\fR loop is redirected, the commands in the loop are run in a sub-shell, and variables set or changed there have no effect on the parent process:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1675
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1676
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1677
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1678
   lastline=
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1679
   while read line
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1680
   do
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1681
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1682
           lastline=$line
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1683
   done < /etc/passwd
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1684
   echo "lastline=$lastline"       # lastline is empty!
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1685
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1686
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1687
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1688
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1689
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1690
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1691
In these cases, the input or output can be redirected by using \fBexec\fR, as in the following example:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1692
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1693
.in +2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1694
.nf
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1695
   # Save standard input (file descriptor 0) as file
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1696
   # descriptor 3, and redirect standard input from the file
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1697
   /etc/passwd:
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1698
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1699
   exec 3<&0               # save standard input as fd 3
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1700
   exec </etc/passwd       # redirect input from file
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1701
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1702
   lastline=
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1703
   while read line
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1704
   do
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1705
           lastline=$line
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1706
   done
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1707
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1708
   exec 0<&3               # restore standard input
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1709
   exec 3<&-               # close file descriptor 3
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1710
   echo "$lastline"        # lastline
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1711
.fi
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1712
.in -2
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1713
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1714
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1715
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1716
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1717
If you get the error message, "\fBcannot fork, too many processes\fR", try using the \fBwait\fR(1) command to clean up your background processes. If this doesn't help, the system process table is probably full or you have too many active foreground processes. There is a limit to the number of process ids associated with your login, and to the number the system can keep track of.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1718
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1719
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1720
Only the last process in a pipeline can be waited for.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1721
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1722
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1723
If a command is executed, and a command with the same name is installed in a directory in the search path before the directory where the original command was found, the shell continues to \fBexec\fR the original command. Use the \fBhash\fR command to correct this situation.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1724
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1725
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1726
The Bourne shell has a limitation on the effective \fBUID\fR for a process. If this \fBUID\fR is less than 100 (and not equal to the real UID of the process), then the \fBUID\fR is reset to the real UID of the process.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1727
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1728
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1729
Because the shell implements both foreground and background jobs in the same process group, they all receive the same signals, which can lead to unexpected behavior. It is, therefore, recommended that other job control shells be used, especially in an interactive environment.
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1730
.sp
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1731
.LP
5f074ca23733 7106955 move ksh93 from ON to userland
Edwin Beasant <Edwin.Beasant@oracle.com>
parents:
diff changeset
  1732
When the shell executes a shell script that attempts to execute a non-existent command interpreter, the shell returns an erroneous diagnostic message that the shell script file does not exist.