Debian Almquist shell
Debian Almquist shell (dash)は、Debian版Almquist Shell(ash)の意で、軽量かつPOSIX互換を目指すUnixシェルである。基本的な特徴はashと共通であり、そちらの記事を参照のこと。この記事では主としてDebian版に固有な点や、Debianにおける用途について述べる。
最新版 | |
---|---|
リポジトリ | |
種別 | POSIX互換UNIXシェル |
ライセンス | BSDライセンス、GNU General Public License |
公式サイト | http://gondor.apana.org.au/~herbert/dash/ |
1997年初頭にHerbert XuによってNetBSD版ashをベースにLinux版として書かれた。その後2002年にdashとリネームされた。
bashよりもシェルスクリプトの実行が高速であり、依存するライブラリが少ない。またアップグレードの問題やディスク破損に対する信頼性は高いと考えられている[2]。dashは以下の用途で使用されることを想定している:
Debian 5.0 (コードネーム: lenny)からはデフォルトの/bin/shをこのシェルに置き換えた[3][4]。2006年10月にリリースされたUbuntu6.10からもデフォルトの/bin/shはdashである[5]。Ubuntuによる移行作業の最中、多くのスクリプトがbashが使用されることが明示されていないにもかかわらず、bashのみの機能を使用していることが発覚した[6][7]。エラーを回避するため、bash前提のスクリプトはdashにとって適切な仕様になるよう改変するもしくは、明示的にbashを使用するように宣言する改変を加えた。すなわちスクリプトのshebang行に#!/usr/bin/env bash
と言うかたちでインタプリタにbashを使用するようセットした。
脚注
- ^ a b “Release 0.5.7”. git.kernel.org (2011年7月8日). 2011年9月4日閲覧。
- ^ http://packages.debian.org/dash
- ^ Release goals for Debian Lenny
- ^ Release Update: architecture status, release goal status, BSPs
- ^ Dash as /bin/sh in Ubuntu 6.10
- ^ Ubuntu bug #61463: script that are using bash could be broken with the new symlink
- ^ Ubuntu bug #141481: dash as #!/bin/sh introduces countless incompatibilities
外部リンク
- Dash home
- Debian package overview
- Debian bugs tagged goal-dash
- Debian、Ubuntuでは/bin/shがデフォルトでDashとなっている。
- Dash mailing list archive
- Shells in Debian