A brief history of KornShell time


Earlier this year I discussed trying the KornShell as my daily driver, but I didn’t know the difference between the major versions. Perhaps this brief summary post might be useful to someone.

  • ksh93 is the evolution of the canonical ksh88 by David Korn and Morris Bolsky at AT&T. It was originally proprietary, but has since been released into the public domain. It’s actively maintained, and shipped with macOS. It’s officially spelled KornShell.

  • pdksh is the Public Domain Korn Shell, released in response to ksh88 being proprietary. NetBSD’s default install includes this variant, and it was the first Korn Shell I used. This, and all its other derivatives, are spelled Korn Shell with a space.

  • mksh is the MirBSD/MirOS Korn Shell. Based on pdksh. The landing page is outdated, but it’s still actively maintained.

  • tcksh is the TENEX Sea Kucumber Shell. Blatantly made up by me.

  • oksh is the Portable OpenBSD Korn Shell. Based on pdksh, with enhancements. I use this variant now, for a few delightful reasons I will soon blog about.

Author bio and support


Ruben Schade is a technical writer and infrastructure architect in Sydney, Australia who refers to himself in the third person. Hi!

The site is powered by Hugo, FreeBSD, and OpenZFS on OrionVM, everyone’s favourite bespoke cloud infrastructure provider.

If you found this post helpful or entertaining, you can shout me a coffee or send a comment. Thanks ☺️.