![]() |
![]() |
![]() |
dash |
辞書:電算用語の基礎知識 サーバー編 (PNSVR) |
読み:ディーエイシェル |
外語:dash: Debian Almquist shell |
品詞:商品名 |
Debianやその派生(Ubuntu含む)で使われている、Kenneth Almquist作のシェル(ash)の拡張版シェル。
|
概要 |
Linuxの多くのディストリビューションでは多機能なbashが人気だが、DebianやUbuntuでは、bashとは系統の異なるash系のシェルであるdashを開発し採用している。
シェルスクリプトの機能もashの系統であるため、bashとは一部について非互換である。
悲しい運命 |
叩かれる運命 |
Linux用のシェルスクリプトとは、結局のところbashで動作するシェルスクリプトと同義である。
Linux界隈では、1行目に「#!/bin/bash」ではなく「#!/bin/sh」と書きながら、/bin/sh では動作しないようなスクリプトがよく書かれている。
bashでしか動作しないなら1行目は「#!/bin/bash」と書かねばならない。bashとdashの両方をインストールしてあれば、普段は高速なdash、bashでしか動作しないスクリプトはbash、という切り替えが可能である。しかし、そうではない行儀の悪いスクリプトが無数に存在した。
結果、「DebianやUbuntuではシェルスクリプトが正常に動作しない」などと言われてしまう、残念な結果となってしまった。
消される運命 |
bash をインストールした後、/bin/sh のシンボリックリンクを一旦消して、再度リンク先を /bin/bash にしたシンボリックリンク /bin/sh を作れば、スクリプトは正常に動作するようになる。
しかし面倒な場合、GUIで設定できる。
まず、dashかbashかを確認する。
ls -l /bin/sh
出力結果がdashであれば、以下を実行し、dashを使わない設定である <いいえ> を選択する。
sudo dpkg-reconfigure dash
bashになったかどうかを再度確認する。
ls -l /bin/sh
リンク |
通信用語の基礎知識検索システム WDIC Explorer Ver 7.04a (27-May-2022) Search System : Copyright © Mirai corporation Dictionary : Copyright © WDIC Creators club |
![]() |