Page 152 - DCAP602_NETWORK_OPERATING_SYSTEMS_I
P. 152
Network Operating Systems-I
notes 8.1.3 korn shell (ksh)
The Korn shell (ksh) is a Unix shell which was developed by David Korn (AT&T Bell Laboratories)
in the early 1980s. It is backwards-compatible with the Bourne shell and includes many features
of the C shell as well, such as a command history, which was inspired by the requests of Bell
Labs users.
The main advantage of ksh over the traditional Unix shell is in its use as a programming language.
Since its conception, several features were gradually added, while maintaining strong backwards
compatibility with the Bourne shell.
For interactive use, ksh provides the ability to edit the command line in a WYSIWYG fashion, by
hitting the appropriate cursor-up or previous-line key-sequence to recall a previous command,
and then edit the command as if the users were in edit line mode. Three modes are available,
compatible with vi, emacs and gmacs.
Until 2000, Korn Shell remained AT&T’s proprietary software. Since then it has been open source
software, originally under a license peculiar to AT&T. But, since the 93q release in early 2005, it
has been licensed under the Common Public License. Korn Shell is available as part of the AT&T
Software Technology (AST) Open Source Software Collection. As ksh was initially only available
through a commercial license from AT&T, a number of free and open source alternatives were
created. These include the public domain pdksh, the Free Software Foundation’s Bourne-Again-
Shell bash, and zsh.
Although the ksh93 version added many improvements (associative arrays, floating point
arithmetic, etc.), some vendors still ship their own version of the older ksh88 as /bin/ksh,
sometimes with extensions (as of 2005 only Solaris and NCR UNIX (a.k.a. MP-RAS) ship ksh88,
all other Unix vendors migrated to ksh93 and even Linux distributions started shipping ksh93).
There are also two modified versions of ksh93 which add features for manipulating the graphical
user interface: dtksh which is part of CDE and tksh which provides access to the Tk widget
toolkit.
SKsh is an AmigaOS version, that offers several Amiga-specific features such as ARexx
interoperability.
MKS Inc.’s MKS Korn shell is another commercial ksh reimplementation. It was included with
Microsoft’s Services for Unix (SFU) up to version 2.0. According to David Korn, the MKS Korn
shell was not fully compatible with his own Korn shell implementation in 1998.
With the introduction of SFU Version 3.0, Microsoft has replaced the MKS Korn shell with a new
and fully POSIX compliant Korn shell as part of the new native Interix subsystem technology. It
is supported on Windows NT 4.0 SP6a+, Windows 2000, Windows XP Professional and Windows
Server 2003. It is also available in the Subsystem for UNIX-based Applications (SUA) of Windows
Vista Enterprise and Ultimate Editions and Windows Server 2008.
Task “Korn Shell is available as part of the AT&T Software Technology (AST) Open
Source Software Collection.” Comment
8.1.4 tcsH
TCSH is an enhanced but completely compatible version of the Berkeley UNIX C shell. It is
a command language interpreter usable both as an interactive login shell and a shell script
command processor. It includes a command-line editor, programmable word completion,
spelling correction, a history mechanism and job control.
146 LoveLy professionaL university