home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam  

4.7 Invoking the Shell

The command interpreter for the Bourne shell (sh ) or the Korn shell (ksh ) can be invoked as follows:

sh   [options
]  [arguments

ksh  [options
]  [arguments

ksh and sh can execute commands from a terminal, from a file (when the first argument is an executable script), or from standard input (if no arguments remain or if -s is specified). ksh and sh automatically print prompts if standard input is a terminal, or if -i is given on the command line.


Arguments are assigned in order to the positional parameters $1 , $2 , etc. If array assignment is in effect (-A or +A ), arguments are assigned as array elements. If the first argument is an executable script, commands are read from it, and the remaining arguments are assigned to $1 , $2 , etc.


-c str

Read commands from string str .


Print all $"..." strings in the program. ksh93 only.


Create an interactive shell (prompt for input).

-I file

Create a cross-reference database for variable and command definitions and references. May not be compiled in. ksh93 only.


Start up as a privileged user (Bourne shell: don't set the effective user and group IDs to those of the real user and group IDs. Korn shell: don't process $HOME/.profile ).


Create a restricted shell (same as rksh or rsh ).


Read commands from standard input; output from built-in commands goes to file descriptor 1; all other shell output goes to file descriptor 2.

The remaining options to sh and ksh are listed under the set built-in command.

Previous: 4.6 Job Control UNIX in a Nutshell: System V Edition Next: 4.8 Restricted Shells
4.6 Job Control Book Index 4.8 Restricted Shells

The UNIX CD Bookshelf NavigationThe UNIX CD BookshelfUNIX Power ToolsUNIX in a NutshellLearning the vi Editorsed & awkLearning the Korn ShellLearning the UNIX Operating System