[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]
Commands Reference, Volume 3

ksh Command

Purpose

Invokes the Korn shell.

Syntax

ksh [ -i ] [ { + | - } { a e f h k m n t u v x } ] [ -o Option ... ] [ -c String | -s | -r | File [ Parameter ] ]

Note: Preceding a flag with + (plus) rather than - (minus) turns off the flag.

Description

The ksh command invokes the Korn shell, which is an interactive command interpreter and a command programming language. The shell carries out commands either interactively from a terminal keyboard or from a file.

The Korn shell is backwardly compatible with the Bourne shell (invoked with the bsh command) and contains most of the Bourne shell features as well as several of the best features of the C shell.

For more information about the Korn shell, refer to "Korn Shell" in AIX Version 4.3 System User's Guide: Operating System and Devices.

Flags

-a Exports automatically all subsequent parameters that are defined.
-c String Causes the Korn shell to read commands from the String variable. This flag cannot be used with the -s flag or with the File[Parameter] parameter.
-e Executes the ERR trap, if set, and exits if a command has a nonzero exit status. This mode is disabled while reading profiles.
-f Disables file name substitution.
-h Designates each command as a tracked alias when first encountered.
-i Indicates that the shell is interactive. An interactive shell is also indicated if shell input and output are attached to a terminal (as determined by the ioctl subroutine). In this case, the TERM environment variable is ignored (so that the kill 0 command does not kill an interactive shell) and the INTR signal is caught and ignored (so that a wait state can be interrupted). In all cases, the QUIT signal is ignored by the shell.
-k Places all parameter assignment arguments in the environment for a command, not just those arguments that precede the command name.
-m Runs background jobs in a separate process and prints a line upon completion. The exit status of background jobs is reported in a completion message. On systems with job control, this flag is turned on automatically for interactive shells.
-n Reads commands and checks them for syntax errors, but does not execute them. This flag is ignored for interactive shells.
-o Option Prints the current option settings and an error message if you do not specify an argument. You can use this flag to enable any of the following options:
allexport Same as the -a flag.
errexit Same as the -e flag.
bgnice Runs all background jobs at a lower priority. This is the default mode.
emacs Enters an emacs-style inline editor for command entry.
gmacs Enters a gmacs-style inline editor for command entry.
ignoreeof Does not exit the shell when it encounters an end-of-file character. You must use the exit command, or override the flag and exit the shell by pressing the Ctrl-D key sequence more than 11 times.
keyword Same as the -k flag.
markdirs Appends a / (slash) to all directory names that are a result of filename substitution.
monitor Same as the -m flag.
noclobber Prevents redirection from truncating existing files. When you specify this option, use the redirection symbol >| (right caret, pipe symbol) to truncate a file.
noexec Same as the -n flag.
noglob Same as the -f flag.
nolog Prevents function definitions from being saved in the history file.
nounset Same as the -u flag.
privileged Same as the -p flag.
verbose Same as the -v flag.
trackall Same as the -h flag.
vi Enters the insert mode of a vi-style inline editor for command entry. Entering escape character 033 puts the editor into the move mode. A return sends the line.
viraw Processes each character as it is typed in vi mode.
xtrace Same as the -x flag.

You can set more than one option on a single ksh command line.

-r Runs a restricted shell. With a restricted shell you cannot:
  • Change the current working directory.
  • Set the value of the SHELL, ENV, or PATH variable.
  • Specify the pathname of a command that contains a / (slash).
  • Redirect output of a command with > (right caret), >| (right caret, pipe symbol), <> (left caret, right caret), or >> (two right carets).
-s Causes the ksh command to read commands from the standard input. Shell output, except for the output of the special commands, is written to file descriptor 2. This parameter cannot be used with the -c flag or with the File[Parameter] parameter.
-t Exits after reading and executing one command.
-u Treats unset parameters as errors when substituting.
-v Prints shell input lines as they are read.
-x Prints executed commands and their arguments.

Files

/usr/bin/ksh Contains the path name to the Korn shell.
/tmp/sh* Contains temporary files that are created when a shell is opened.

Related Information

The env command.

The profile file format.

Korn Shell in AIX Version 4.3 System User's Guide: Operating System and Devices.


[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]