The Korn shell is the most advanced of the shells that are "officially"
distributed with UNIX systems.
It's a backward-compatible evolutionary
successor to the Bourne shell that includes most of the C shell's
major advantages as well as a few new features of its own.
Features appropriated from the C shell include:
Job control
, including the fg
and bg
commands and
the ability to stop jobs with CTRL-Z.
Aliases
, which allow you to define shorthand names for commands
or command lines.
Functions
(included in some C shell versions), which increase
programmability and allow you to store your own shell code in
memory instead of files.
Command history
, which lets you recall previously entered
commands.
The Korn shell's major new features include:
Command-line editing
, allowing you to use vi
or
emacs
-style editing commands on your command lines.
Integrated programming features
: the functionality of
several external UNIX commands, including test
, expr
,
getopt
, and echo
, has been integrated into the
shell itself, enabling common programming tasks to be done
more cleanly and without creating extra processes.
Control structures
, especially the select
construct,
which enables easy menu generation.
Debugging primitives
that make it possible to write
tools that help programmers debug their shell code.
Regular expressions
, well known to users of UNIX utilities
like grep
and awk
, have been added to the standard set
of filename wildcards and to the shell variable facility.
Advanced I/O features
, including the ability to do
two-way communication with concurrent processes (coroutines
).
New options and variables
that give you more ways to customize
your environment.
Increased speed
of shell code execution.
Security features
that help protect against "Trojan horses"
and other types of break-in schemes.
|
|