I'm looking for Linux ports of historic Bourne shell versions (other than the Heirloom shell, which implements the SVR4/SVID3 level of the shell). For curiosity and research, I want to dig into the internals of historic shell code.

Specifically: I'm looking for historic versions of the Bourne shell that have been ported to Linux. I'm not looking for modern reimplementations, "Bourne Compatible shells", "Bourne Again shell", "C-shell/T-C-shell", or "Korn shell".


  • Why do you want them? I ask because it might improve the answers you get. – Warren Young Oct 20 '09 at 17:00
  • Do you mean ports of what? Original Version 7 code? There are a ton of bourne-compatible shells: bash, dash, ash, and the one included with BusyBox. – Zan Lynx Oct 20 '09 at 17:02
  • to Warren:For curiosity and research.I want to dig into the internal of shell^_^ – Jichao Oct 20 '09 at 23:14
  • to Zan Lynx:Only the orignal "bourne shell" descendent are needed.According to wikipedia, dash and ash could be OK... – Jichao Oct 20 '09 at 23:16
  • i rephrased your question for clarity, hope it's not too far from where you're aiming. – quack quixote Oct 20 '09 at 23:30

I hate answering with just a link to Wikipedia, but see Bourne-compatible shells which does list ash and dash which were the first two to come to mind for me (that weren't bash).

| improve this answer | |
  • em..ash and dash would be OK.so any others? – Jichao Oct 20 '09 at 23:17

GNU Bash is very popular. It is complete, in fact highly extended, and also kind of big and slow, although I'm not sure you would notice on today's zippy CPUs.

ash is the native BSD shell. It is smaller, faster, and often installed as /bin/sh even on linux in order to make generic shell scripts run fast. It's a perfectly decent interactive shell EXCEPT that on many linux distros, it is considered non-interactive (the developers probably all use bash) and so the build is deliberately crippled in order to make it even smaller. If you use it interactively, build it from source.

ksh and zsh are older enhanced shells.

csh is ancient and non-posix, and it won't run most shell command files. It is almost always installed out-of-the-box, though, and it might provide some amusement. In particular the ! history substitution, available in bash, was invented here and is kind of neat.

Wikipedia has a comparison.

| improve this answer | |
  • 1
    You should use the wikipedia page to pick out the bourne ("posix") ones. csh is not, of course. – DigitalRoss Oct 20 '09 at 17:14

GNU Bash is a very well-known and frequently used Bourne shell.

| improve this answer | |

It is pre-Bourne, but you might be interested in the Sixth Edition Thompson shell.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.