Posts Tagged ‘Almquist shell’

Almquist Shell

Saturday, May 8th, 2010

The Almquist shell (also known as A Shell or ash) 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 history mechanisms originally, because Almquist felt that such should be moved into the terminal driver. Current variants have emacs and vi modes.

Derivatives of ash are installed as the default shell (/bin/sh) on FreeBSD, NetBSD, 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, such as Naked Lady, also use a derivative of ash as the default shell, although the 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.

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.