Almquist shell

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Yobot (talk | contribs) at 15:12, 24 September 2012 (clean up, References after punctuation per WP:REFPUNC and WP:PAIC using AWB (8434)). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Almquist shell
Written inC
Operating systemCross-platform
PlatformCross-platform
Available inEnglish, multilingual (gettext)
TypeUnix shell
Websitewww.in-ulm.de/~mascheck/various/ash/

The Almquist shell (also known as A Shell, ash and sh) 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. Originally it did not feature line editing[clarification needed] or command history mechanisms, because Almquist felt that such should be moved into the terminal driver; however, current variants support it.

Derivatives of ash are installed as the default shell (/bin/sh) on FreeBSD, NetBSD, DragonFly BSD, MINIX and Android.[1] 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. Debian and Ubuntu symlink /bin/sh to the dash shell for faster script execution, but keeps Bash as the default login shell.

History

ash was first released via a posting to the comp.sources.unix Usenet news group, approved and moderated by Rich Salz on May 30, 1989. It was described as "a reimplementation of the System V shell [with] most features of that shell, plus some additions."[2]

The following is extracted from the ash package information from Slackware[when?]:

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 and Ubuntu uses ash as its /bin/sh.

Ash has since been replaced on both Debian and Ubuntu. Dash became the replacement for ash in Debian and was expected to be the default /bin/sh for Debian Lenny.[3][4] Dash became the default /bin/sh in Ubuntu starting with the 6.10 release in October 2006.[5]

See also

References

  1. ^ "Android sh source".
  2. ^ Almquist, Kenneth (May 30, 1989). Rich Salz (ed.). "v19i001: A reimplementation of the System V shell, Part01/08". Usenet newsgroup, comp.sources.unix.
  3. ^ Release goals for Debian Lenny
  4. ^ Release Update: architecture status, release goal status, BSPs
  5. ^ Dash as /bin/sh in Ubuntu 6.10

Further reading

External links