A afirmação na sua pergunta está incorreta. O Solaris até a versão 10 está fornecendo o verdadeiro shell Bourne legado como /bin/sh. Isso foi feito para não quebrar a compatibilidade com scripts antigos que podem falhar com um shell diferente. Porém, essa escolha foi muito frustrante.
A maioria, se não todas as versões restantes do Unix e do Unix, incluindo o Solaris 11, fornece um shell compatível com POSIX, /bin/shporque o POSIX exige o shcomando para iniciar um shell POSIX, não o shell Bourne herdado que não é compatível. /bin/shé geralmente :
ksh88ou ksh93nas implementações comerciais do Unix
- um modificado
bashem OS/X(embora costumava ser zsh)
- um
ashou pdkshderivado em outroBSDs
bashou dashem distribuições Gnu / Linux.
Não é necessariamente um link, mas pode ser um executável real em muitos sistemas, exceto no Gnu / Linux.
Curiosamente, apesar do que afirma a resposta mais votada para sua pergunta, não é a falta de recursos que leva os desenvolvedores de distribuição a instalar algo diferente do shell Bourne herdado, /bin/shmas o desejo de ser o mais compatível possível com POSIX, ou seja, se comportar como um Unix como OS. O fato de o shell POSIX ter mais recursos do que o shell Bourne herdado é apenas um efeito colateral desse objetivo de conformidade padrão.
Também é um fato que algumas conchas bashse comportam de maneira diferente quando chamadas sh, e isso remove principalmente os recursos do shell, e não o contrário.