sh(1)
NAME
sh − overview of various system shells
SYNOPSIS
POSIX Shell:
sh [±aefhikmnoprstuvx] [±o option] ... [-c string] [arg ...]
Bourne Shell:
sh [--acefhiknrstuvx ...] [arg ...]
rsh [--acefhiknrstuvx ...] [arg ...]
Korn Shell:
ksh [±aefhikmnoprstuvx] [±o option] ... [-c string] [arg ...]
rksh [±aefhikmnoprstuvx] [±o option] ... [-c string] [arg ...]
C Shell:
csh [-cefinstvxTVX] [command_file] [argument_list ...]
Key Shell:
keysh
DESCRIPTION
Remarks:
The POSIX .2 standard requires that, on a POSIX -compliant system, executing the command .sh activates the POSIX shell (located in file /bin/posix/sh on HP-UX systems), and executing the command man sh produces an on-line manual entry that displays the syntax of the POSIX shell command-line.
However, the sh command has historically been associated with the conventional Bourne shell, which could confuse some users. To meet standards requirements and also clarify the relationships of the various shells and where they reside on the system, this entry provides command-line syntax and a brief description of each shell, and lists the names of the manual entries where each shell is described in greater detail.
Shell Descriptions
The HP-UX operating system supports the following shells:
sh POSIX -conformant command programming language and commands interpreter residing in file /bin/posix/sh. Can execute commands read from a terminal or a file. This shell conforms to current POSIX standards in effect at the time the HP-UX system release was introduced, and is similar to the Korn shell in many respects. Similar in many respects to the Korn shell, the POSIX shell contains a history mechanism, supports job control, and provides various other useful features.
sh Bourne-shell command programming language and commands interpreter residing in file /bin/sh. Can execute commands read from a terminal or a file. This shell lacks many features contained in the POSIX and Korn shells.
ksh Korn-shell command programming language and commands interpreter residing in file /bin/ksh. Can execute commands read from a terminal or a file. This shell, like the POSIX shell, contains a history mechanism, supports job control, and provides various other useful features.
csh A command language interpreter that incorporates a command history buffer, C-language-like syntax, and job control facilities.
rsh Restricted version of the Bourne-shell command interpreter. Sets up a login name and execution environment whose capabilities are more controlled (restricted) than normal user shells.
rksh restricted version of the Korn-shell command interpreter Sets up a login name and execution environment whose capabilities are more controlled (restricted) than normal user shells.
keysh An extension of the standard Korn Shell that uses hierarchical softkey menus and context-sensitive help.
| To obtain: | Use the command: |
| Bourne Shell | /bin/sh ... |
| Korn Shell | /bin/ksh ... |
| POSIX Shell | /bin/posix/sh ... |
| C Shell | /bin/csh ... |
| Key Shell | /usr/bin/keysh |
These shells can also be the default invocation, depending on the entry in the /etc/passwd file. See also chsh(1).
Whether the sh command invokes the Bourne Shell or the POSIX Shell depends on the setting of the PATH environment variable.
The default PATH in file /etc/profile is set to invoke the POSIX shell.
WARNINGS
Many manual entries contain descriptions of shell behavior or describe program or application behavior similar to “the shell” with a reference to “see sh(1)”.
These various references to sh(1) generally pertain to the Bourne shell, and may or may not reflect the behavior of the POSIX shell in specific situations. Exercise due caution when noting references to shell behavior because the various shells were invented in different years by different people, and each has its own unique characteristics.
SEE ALSO
For more information on the various individual shells, see:
sh-bourne(1) Bourne Shell (/bin/sh) description.
ksh(1) Korn Shell (/bin/ksh) description.
sh-posix(1) POSIX Shell (/bin/posix/sh) description.
csh(1) C Shell (/bin/csh) description.
keysh(1) Key Shell (/usr/bin/keysh) description.
Hewlett-Packard Company — HP-UX Release 9.0: August 1992