The Almquist shell
(also known as A Shell
) was originally Kenneth Almquist's clone of the SVR4
-variant of the Bourne shell
; it is a fast, small, POSIX
-compatible Unix shell
designed to replace the Bourne shell in later BSD
distributions. By intention it did not feature line editing or command history
mechanisms originally, because Almquist felt that such should be moved into the terminal driver
. Current variants have emacs
Derivatives of ash are installed as the default shell (/bin/sh) on FreeBSD, NetBSD, DragonFly BSD and Minix. ash is also fairly popular in embedded Linux systems; its code was incorporated into the BusyBox catch-all executable often employed in this area. Debian's version of ash is known as Debian Almquist Shell (dash).
Some Linux distributions also use a derivative of ash as the default shell, although Bash (Bourne Again Shell) is more popular. Ubuntu symlinks /bin/sh to the dash shell for faster script execution, but keeps Bash as the default login shell; Debian will be doing so as of the current testing release, Lenny.
The following is extracted from the ash package information from Slackware:
- ash (Kenneth Almquist's ash shell)
- A lightweight (92K) Bourne compatible shell. Great for machines with low memory, but does not provide all the extras of shells like bash, tcsh, and zsh. Runs most shell scripts compatible with the Bourne shell. Note that under Linux, most scripts seem to use at least some bash-specific syntax. The Slackware setup scripts are a notable exception, since ash is the shell used on the install disks. NetBSD uses ash as its /bin/sh.