932:
134:
511:
too. As a result, Debian policy was amended to allow script developers to assume a largely POSIX-compliant shell, save for the extensions merged into Dash for convenience (
252:, 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.
1177:
472:
execution, especially during startup of the operating system, compared to previous versions of Debian and Ubuntu that used Bash for this purpose, although
1028:
437:
816:
789:
236:
A lightweight (92K) Bourne compatible shell. Great for machines with low memory, but does not provide all the extras of shells like
200:
on 30 May 1989. It was described as "a reimplementation of the System V shell most features of that shell, plus some additions".
1167:
666:
175:
260:
Myriad forks have been produced from the original ash release. These derivatives of ash are installed as the default shell (
503:
line. The problem was first spotted in Ubuntu and the Ubuntu maintainers decided to make all the scripts comply with the
1172:
1136:
576:
357:
289:
1021:
751:
481:
461:
341:
67:
601:
687:
441:
1162:
288:
feature differed from POSIX. That version of the shell was replaced in MINIX 3.3. Android used ash until
957:
163:
1157:
1014:
781:
507:
standard. The changes were later upstreamed to Debian, which eventually adopted Dash as its default
837:
543:, the catch-all executable often employed in this area, and is used in distributions like DSLinux,
364:
133:
98:
879:
552:
281:
86:
974:
1118:
1103:
1068:
1053:
812:
785:
775:
644:
560:
496:
473:
237:
216:
858:
806:
1073:
833:
376:
348:
188:
74:
1098:
548:
484:
starting with the 6.10 release in
October 2006. Dash replaced Bash and became the default
212:
931:
1113:
536:
500:
91:
1151:
273:
219:
1058:
544:
523:). A similar transition has happened in Slackware Linux, although their version of
492:
469:
445:
381:
215:
mechanisms, because
Almquist felt that such functionality should be moved into the
171:
285:
208:
925:
625:
114:
1083:
1037:
476:
is still the default login shell for interactive use. Dash became the default
369:
310:
159:
103:
36:
1088:
1078:
597:
499:-specific functionalities ("bashisms") without properly declaring it in the
396:
293:
248:. Runs most shell scripts compatible with the Bourne shell. Note that under
226:
197:
79:
17:
898:
1001:
984:
967:
949:
908:
1123:
1063:
980:
556:
540:
433:). Xu's main priorities are POSIX conformance and slim implementation.
385:
265:
746:
1093:
997:
963:
720:
605:
564:
422:
269:
253:
193:
444:(both required in POSIX). Line editing and history support based on
945:
904:
504:
425:. In September 2002, with release 0.4.1, this port was renamed to
353:
277:
249:
204:
834:"Script that are using bash could be broken with the new symlink"
225:
The following is extracted from the ash package information from
1108:
715:
241:
207:
standard's specification of the Unix shell, ash did not provide
167:
1010:
1006:
991:
602:"v19i001: A reimplementation of the System V shell, Part01/08"
245:
939:
859:"dash as #!/bin/sh introduces countless incompatibilities"
436:
Like its predecessor, Dash implements support for neither
535:
Ash (mainly the Dash fork) is also fairly popular in
539:
systems. Dash version 0.3.8-5 was incorporated into
524:
520:
516:
512:
508:
449:
391:
375:
363:
347:
337:
319:
309:
109:
97:
85:
73:
63:
45:
35:
488:in Debian 6 (Squeeze), released in February 2011.
284:. MINIX 3.2 used the original ash version, whose
231:
203:Fast, small, and virtually compatible with the
174:, it replaced the original Bourne shell in the
178:versions of Unix released in the early 1990s.
1022:
468:in 2006. The reason for using Dash is faster
8:
304:
186:ash was first released via a posting to the
166:in the late 1980s. Initially a clone of the
30:
1029:
1015:
1007:
930:
303:
132:
29:
805:Christopher Negus; Francois Caen (2011).
777:Ubuntu: Powerful Hacks and Customizations
741:
739:
710:
708:
222:. However, current variants support it.
588:
619:
617:
615:
196:news group, approved and moderated by
811:. John Wiley & Sons. p. 49.
464:decided to adopt Dash as the default
438:internationalization and localization
7:
1178:Text-oriented programming languages
491:A result of the shift is that many
596:Almquist, Kenneth (May 30, 1989).
233:ash (Kenneth Almquist's ash shell)
25:
527:is only partially based on Dash.
292:, at which point it switched to
667:"Android's shell and utilities"
626:"Ash (Almquist Shell) Variants"
1:
884:Debian Policy Manual v4.5.0.2
665:Elliott Hughes (2018-06-20).
608:newsgroup, comp.sources.unix.
456:Adoption in Debian and Ubuntu
442:multi-byte character encoding
1137:Comparison of command shells
577:Comparison of command shells
305:Debian Almquist shell (DASH)
832:Egil Hasting (2006-09-20).
1194:
417:In 1997 Herbert Xu ported
1132:
1044:
692:The Linux Kernel Archives
645:"TEST versus Portability"
643:Thomas E. Dickey (2015).
495:were found making use of
460:Because of its slimness,
256:uses ash as its /bin/sh.
1168:Cross-platform software
857:comotion (2007-09-21).
716:"Non-interactive Shell"
384:with mksignames under
325:; 27 years ago
258:
162:originally written by
51:; 35 years ago
27:Lightweight Unix shell
782:John Wiley & Sons
774:Neal Krawetz (2011).
431:Debian Almquist shell
808:Ubuntu Linux Toolbox
382:3-clause BSD license
1173:Scripting languages
306:
282:Linux distributions
158:) is a lightweight
32:
323:July 15, 1997
1145:
1144:
1000:General Commands
983:General Commands
966:General Commands
907:General Commands
747:"Dash as /bin/sh"
555:firmware such as
415:
414:
141:
140:
49:May 30, 1989
16:(Redirected from
1185:
1031:
1024:
1017:
1008:
995:
994:
978:
977:
961:
960:
943:
942:
934:
929:
928:
926:Official website
911:
902:
901:
899:checkbashisms(1)
894:
888:
887:
876:
870:
869:
867:
866:
854:
848:
847:
845:
844:
829:
823:
822:
802:
796:
795:
771:
765:
764:
762:
761:
743:
734:
733:
731:
730:
712:
703:
702:
700:
698:
683:
677:
676:
674:
673:
662:
656:
655:
653:
651:
640:
634:
633:
624:Mascheck, Sven.
621:
610:
609:
593:
551:and Linux-based
526:
522:
518:
514:
510:
487:
479:
467:
451:
420:
411:
408:
406:
404:
402:
400:
398:
349:Operating system
333:
331:
326:
307:
263:
192:
164:Kenneth Almquist
137:
136:
129:
126:
124:
122:
120:
118:
116:
75:Operating system
59:
57:
52:
41:Kenneth Almquist
33:
21:
1193:
1192:
1188:
1187:
1186:
1184:
1183:
1182:
1148:
1147:
1146:
1141:
1128:
1040:
1035:
990:
989:
973:
972:
956:
955:
952:– User Commands
938:
937:
924:
923:
920:
915:
914:
897:
896:
895:
891:
878:
877:
873:
864:
862:
856:
855:
851:
842:
840:
831:
830:
826:
819:
804:
803:
799:
792:
784:. p. 178.
773:
772:
768:
759:
757:
745:
744:
737:
728:
726:
714:
713:
706:
696:
694:
685:
684:
680:
671:
669:
664:
663:
659:
649:
647:
642:
641:
637:
623:
622:
613:
595:
594:
590:
585:
573:
549:Tiny Core Linux
533:
485:
477:
465:
458:
421:from NetBSD to
418:
395:
329:
327:
324:
320:Initial release
302:
261:
213:command history
187:
184:
170:variant of the
146:(also known as
131:
113:
55:
53:
50:
46:Initial release
28:
23:
22:
15:
12:
11:
5:
1191:
1189:
1181:
1180:
1175:
1170:
1165:
1160:
1150:
1149:
1143:
1142:
1140:
1139:
1133:
1130:
1129:
1127:
1126:
1121:
1116:
1111:
1106:
1101:
1096:
1091:
1086:
1081:
1076:
1071:
1066:
1061:
1056:
1051:
1045:
1042:
1041:
1036:
1034:
1033:
1026:
1019:
1011:
1005:
1004:
987:
970:
953:
935:
919:
918:External links
916:
913:
912:
889:
871:
849:
824:
817:
797:
790:
766:
735:
704:
678:
657:
635:
611:
587:
586:
584:
581:
580:
579:
572:
569:
537:embedded Linux
532:
531:Embedded Linux
529:
457:
454:
450:--with-libedit
413:
412:
393:
389:
388:
379:
373:
372:
367:
361:
360:
351:
345:
344:
339:
335:
334:
321:
317:
316:
313:
301:
298:
280:, and in some
183:
180:
144:Almquist shell
139:
138:
111:
107:
106:
101:
95:
94:
92:Cross-platform
89:
83:
82:
77:
71:
70:
65:
61:
60:
47:
43:
42:
39:
31:Almquist shell
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
1190:
1179:
1176:
1174:
1171:
1169:
1166:
1164:
1163:1989 software
1161:
1159:
1156:
1155:
1153:
1138:
1135:
1134:
1131:
1125:
1122:
1120:
1117:
1115:
1112:
1110:
1107:
1105:
1102:
1100:
1097:
1095:
1092:
1090:
1087:
1085:
1082:
1080:
1077:
1075:
1072:
1070:
1067:
1065:
1062:
1060:
1057:
1055:
1052:
1050:
1047:
1046:
1043:
1039:
1032:
1027:
1025:
1020:
1018:
1013:
1012:
1009:
1003:
999:
996: –
993:
988:
986:
982:
979: –
976:
971:
969:
965:
962: –
959:
954:
951:
947:
944: –
941:
936:
933:
927:
922:
921:
917:
910:
906:
903: –
900:
893:
890:
885:
881:
875:
872:
860:
853:
850:
839:
835:
828:
825:
820:
818:9781118079140
814:
810:
809:
801:
798:
793:
791:9781118080382
787:
783:
779:
778:
770:
767:
755:
753:
748:
742:
740:
736:
724:
722:
717:
711:
709:
705:
693:
689:
686:Xu, Herbert.
682:
679:
668:
661:
658:
646:
639:
636:
631:
630:www.in-ulm.de
627:
620:
618:
616:
612:
607:
603:
599:
592:
589:
582:
578:
575:
574:
570:
568:
566:
562:
558:
554:
550:
546:
542:
538:
530:
528:
506:
502:
498:
494:
493:shell scripts
489:
483:
475:
471:
463:
455:
453:
448:is optional (
447:
443:
439:
434:
432:
428:
424:
410:
394:
390:
387:
383:
380:
378:
374:
371:
368:
366:
362:
359:
355:
352:
350:
346:
343:
340:
336:
322:
318:
314:
312:
308:
299:
297:
295:
291:
287:
283:
279:
275:
274:DragonFly BSD
271:
267:
257:
255:
251:
247:
243:
239:
234:
230:
228:
223:
221:
218:
214:
210:
206:
201:
199:
195:
191:.sources.unix
190:
181:
179:
177:
173:
169:
165:
161:
157:
153:
149:
145:
135:
128:
112:
108:
105:
102:
100:
96:
93:
90:
88:
84:
81:
78:
76:
72:
69:
66:
62:
48:
44:
40:
38:
34:
19:
1048:
892:
883:
874:
863:. Retrieved
852:
841:. Retrieved
827:
807:
800:
776:
769:
758:. Retrieved
756:. 2017-12-16
750:
727:. Retrieved
725:. 2020-01-13
719:
695:. Retrieved
691:
681:
670:. Retrieved
660:
648:. Retrieved
638:
629:
591:
545:Alpine Linux
534:
521:test -a / -o
490:
470:shell script
459:
446:GNU Readline
435:
430:
426:
423:Debian Linux
416:
311:Developer(s)
259:
235:
232:
224:
209:line editing
202:
185:
172:Bourne shell
155:
151:
147:
143:
142:
37:Developer(s)
18:Dash (shell)
1158:Unix shells
1038:Unix shells
880:"10. Files"
861:. Launchpad
697:23 December
290:Android 4.0
1152:Categories
1084:PowerShell
865:2020-02-29
843:2020-02-29
760:2020-02-29
729:2020-02-29
672:2020-02-29
583:References
370:Unix shell
338:Written in
330:1997-07-15
315:Herbert Xu
168:System V.4
160:Unix shell
121:/~mascheck
104:Unix shell
64:Written in
56:1989-05-30
838:Launchpad
688:"COPYING"
598:Rich Salz
405:/~herbert
227:Slackware
198:Rich Salz
80:Unix-like
1114:Thompson
1074:Hamilton
1049:Almquist
650:March 1,
571:See also
217:terminal
123:/various
87:Platform
981:FreeBSD
975:dash(1)
958:dash(1)
940:dash(1)
600:(ed.).
557:OpenWrt
541:BusyBox
517:echo -n
509:/bin/sh
501:shebang
486:/bin/sh
478:/bin/sh
466:/bin/sh
392:Website
386:GNU GPL
377:License
358:Android
328: (
266:FreeBSD
262:/bin/sh
182:History
148:A Shell
117:.in-ulm
110:Website
54: (
1094:Qshell
1059:Bourne
1002:Manual
998:NetBSD
985:Manual
968:Manual
964:Debian
950:Manual
909:Manual
815:
788:
752:Ubuntu
721:Debian
606:Usenet
565:DD-WRT
561:Tomato
553:router
482:Ubuntu
462:Ubuntu
399:.apana
397:gondor
270:NetBSD
254:NetBSD
244:, and
220:driver
194:Usenet
130:
992:sh(1)
948:User
946:Linux
905:Linux
513:local
505:POSIX
407:/dash
354:Linux
278:MINIX
264:) on
250:Linux
229:v14:
205:POSIX
1119:Wish
1109:tcsh
1104:sash
1079:Korn
1069:fish
1054:Bash
813:ISBN
786:ISBN
754:Wiki
723:Wiki
699:2023
652:2020
563:and
497:Bash
474:Bash
440:nor
427:Dash
401:.org
365:Type
300:Dash
294:mksh
286:test
242:tcsh
238:bash
189:comp
154:and
125:/ash
99:Type
1124:Zsh
1089:PWB
1064:csh
525:ash
480:in
452:).
419:ash
403:.au
246:zsh
211:or
176:BSD
152:ash
119:.de
115:www
1154::
1099:rc
882:.
836:.
780:.
749:.
738:^
718:.
707:^
690:.
628:.
614:^
604:.
567:.
559:,
547:,
519:,
515:,
356:,
296:.
276:,
272:,
268:,
240:,
156:sh
150:,
1030:e
1023:t
1016:v
886:.
868:.
846:.
821:.
794:.
763:.
732:.
701:.
675:.
654:.
632:.
429:(
409:/
342:C
332:)
127:/
68:C
58:)
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.