Stwierdzenie w twoim pytaniu jest nieprawidłowe. Solaris do wersji 10 jest zapewnienie prawdziwej starszej powłoki Bourne jako /bin/sh. Zrobiono to, aby nie naruszać kompatybilności ze starymi skryptami, które mogą zawieść z inną powłoką. Ten wybór był jednak bardzo frustrujący.
Większość, jeśli nie wszystkie pozostałe wydania Uniksa i Unixa, w tym Solaris 11, zapewniają powłokę zgodną z /bin/shPOSIX, ponieważ POSIX nakazuje shpolecenie uruchomienia powłoki POSIX, a nie starszej powłoki Bourne, która nie jest zgodna. /bin/shjest ogólnie:
ksh88lub ksh93w komercyjnych implementacjach Uniksa
- zmodyfikowany
bashna OS/X(choć kiedyś zsh)
ashlub pdkshpochodną w innychBSDs
bashlub dashw dystrybucjach Gnu / Linux.
Niekoniecznie jest to łącze, ale może być prawdziwym plikiem wykonywalnym na wielu systemach oprócz Gnu / Linuxes.
Co ciekawe, pomimo tego, co stanowi najbardziej pozytywną odpowiedź na twoje pytanie, to nie brak funkcji skłania deweloperów dystrybucji do zainstalowania czegoś innego niż starsza powłoka Bourne'a, /bin/shale chęć bycia jak najbardziej zgodnym z POSIX, tj. Zachowywania się jak Uniksowy system operacyjny. Fakt, że powłoka POSIX ma więcej funkcji niż starsza powłoka Bourne, jest tylko efektem ubocznym tego standardowego celu zgodności.
Jest również faktem, że niektóre powłoki bashzachowują się inaczej, gdy są wywoływane sh, a to w większości usuwa funkcje z powłoki, a nie na odwrót.