Debian Almquist shell

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Debian Almquist shell
Dernière version 0.5.7 () [+/-]
Environnement système Unix
Type Shell Unix conforme POSIX
Licence Licence BSD, Licence publique générale GNU
Site web gondor.apana.org.au/~herbert/dash/

Le Debian Almquist shell est un shell Unix, c'est-à-dire un interpréteur de commande pour les systèmes d'exploitation de type Unix ; il se veut petit, rapide, et conforme aux standards POSIX[1].

C'est un descendant direct de la version NetBSD de ash. Herbert Xu effectua son portage sur Linux en 1997. Et en 2002, cette version fut renommée dash.

Plus léger que le Bash, il nécessite moins d'espace disque et possède moins de fonctionnalités, notamment en tant que shell interactif[2].

Certaines fonctionnalités POSIX, comme la variable $LINEBI, ne sont pas encore mises en œuvre. Comme le dash dépend de peu de bibliothèques, il est plus fiable en cas de problème de disque ou de mise à niveau[3].

Pour toutes ces raisons, le dash est communément utilisé :

  • comme remplaçant de /bin/sh ;
  • pour vérifier la compatibilité POSIX d'un script commençant par #!/bin/sh ;
  • comme shell pour le compte système root ;
  • comme shell sur les disquettes d'installation.

Le dash est une solution de remplacement du ash pour le système d'exploitation Debian et devait être le shell par défaut "/bin/sh" de sa version Lenny[4],[5]. C'était maintenant l'un des objectifs de Squeeze (version 6)[6].

Depuis la version 6.10 d’Ubuntu (), dash en est le shell par défaut[7]. Dans les premiers temps, l'équipe a découvert que nombre de scripts déclarés comme compatibles POSIX contenaient du code spécifique à Bash sans que ce ne soit signalé[8],[9]. Pour éviter les erreurs, ils ont été modifiés pour coller aux standards, ou explicitement déclarés à l'aide de la ligne #!/bin/bash.

Chez Debian la volonté est toujours présente de rendre les scripts Bash non déclarés compatibles avec dash et avec n'importe quel shell POSIX ; ou à défaut de les déclarer comme dépendant de Bash[10].

Références[modifier | modifier le code]

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]