What are the key features of the Korn Shell?
Korn shell was developed by David Korn and it includes features similar to C shell and Bourne shell. Some key features of the Korn Shell are :
- Job control: It can stop jobs with CTRL-Z and is able to put them either to the foreground or background with the fg and bg commands.
- Aliases: It can define short names for commands or command lines.
- Functions: It can store the shell code in memory and not in files. Functions increase programming ability and efficiency.
- Command history: It can recall commands that have been entered earlier or previously.
The Korn shell’s major new features include:
- Command line editing: User can use vi or Emacs-style editing commands on your command lines.
- Integrated programming features: Several external Unix commands functionality like test, expr, getopt and echo have been integrated into the shell. This enables more cleanliness in performing common programming tasks and also without creating extra processes.
- Control structures: Menu is generated easily because of control structures.
- Debugging primitives: This helps to write tools which are required to debug shell code.
- Regular expressions: Regular expressions have been added.
- Advanced I/O features: Many new facilities for controlling the process I/O have been added.
- New options and variables: To help customize, new options and variables help user.
- Increase Speed: Korn shells execute shell programs faster than Bourne shell.
- Security features: It helps to protect against different types of break-in schemes like “Trojan Horses”
Major new features in the 1993 version include:
- POSIX compliance: POSIX is an international standard for portable shell programming. POSIX compliance allows one to write and use shell scripts.
- Built-in integer arithmetic: It allows the use of new built in arithmetic functions and floating-point numbers, thus making it great for use.
- Structured variable names: Related items can be grouped together in a variable similar to C structures.
- Associative arrays: It makes programming of tasks more natural. In associative array, array is indexed by string values.