Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
KornShell
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Variants== There are several [[Fork (software development)|forks]] and [[Clone (computing)#Software|clones]] of KornShell: * {{mono|dtksh}} – a fork of {{mono|ksh93}} included as part of [[Common Desktop Environment|CDE]]. * {{mono|tksh}} – a fork of {{mono|ksh93}} that provides access to the [[Tk (software)|Tk]] [[widget toolkit]]. * {{mono|oksh}} – a port of [[OpenBSD]]'s variant of KornShell, intended to be maximally portable<ref>{{cite web |title=oksh at GitHub|url=https://github.com/ibara/oksh/blob/master/README.md |website=GitHub |date=1 August 2020 |language=en}}</ref> across operating systems. It was used as the default shell in [[DeLi Linux]] 7.2. * {{mono|loksh}} – a [[Linux]] port of [[OpenBSD]]'s variant of KornShell, with minimal changes.<ref>{{cite web |title=loksh at GitHub|url=https://github.com/dimkr/loksh/blob/master/README.md |website=GitHub |date=15 October 2021 |language=en}}</ref> * {{mono|mksh}} – a [[Free software|free]] implementation of the KornShell language, forked from OpenBSD {{mono|pdksh}}. It was originally developed for [[MirOS BSD]] and is licensed under [[Permissive free software licence|permissive]] (though not public domain) terms; specifically, the [[MirOS Licence]].<ref name="mkshlicense" /> In addition to its usage on BSD, this variant has replaced {{mono|pdksh}} on Debian,<ref name="debmksh">{{Cite web |url=https://people.debian.org/~spaillard/Debian_Release_Notes/mksh.html |title=5.11. The PDKSH to MKSH transition |access-date=2014-07-28 |archive-url=https://web.archive.org/web/20140728110151/https://people.debian.org/~spaillard/Debian_Release_Notes/mksh.html |archive-date=2014-07-28 |url-status=dead }}</ref> and is the default shell on Android. * {{mono|SKsh}} – an [[AmigaOS]] variant that provides several Amiga-specific features, such as [[ARexx]] interoperability.<ref>{{Cite web|url=http://aminet.net/package/util/shell/SKsh21|title = Aminet - util/Shell/SKsh21.LZH}}</ref> In this tradition [[MorphOS]] uses {{mono|pdksh}} in its SDK. * [[MKS Inc.]]'s MKS Korn shell – a proprietary implementation of the KornShell language from [[Microsoft Windows Services for UNIX]] (SFU) up to version 2.0; according to David Korn, the MKS Korn shell was not fully compatible with KornShell in 1998.<ref>{{cite web|url=http://slashdot.org/articles/01/02/06/2030205.shtml |title=David Korn Tells All |date=7 February 2001 |publisher=Slashdot |access-date=2009-10-22}}</ref><ref>{{cite web|url=http://lists.blu.org/pipermail/discuss/1998-August/002393.html |title=Jerry Feldman — USENIX NT/LISA NT conference attendee |date=29 August 1998 |publisher=Lists.blu.org |access-date=2009-10-22}}</ref> In SFU version 3.0 [[Microsoft]] replaced the MKS Korn shell with a new POSIX.2-compliant shell as part of [[Interix]].<ref>{{cite web|url=https://technet.microsoft.com/de-de/library/bb463204(en-us).aspx |title=Windows Services for UNIX Version 3.0 |date=5 December 2007 |publisher=Technet.microsoft.com |access-date=2009-10-22}}</ref> * KornShell is included in [[UWIN]], a Unix compatibility package by David Korn.<ref name="Olczak2001">{{cite book|author=Anatole Olczak|title=The Korn shell: Unix and Linux programming manual|url=https://books.google.com/books?id=dCIJv94vXUMC&pg=PA4|year=2001|publisher=Addison-Wesley Professional|isbn=978-0-201-67523-8|pages=4}}</ref> * {{mono|/bin/sh}} in Doug Gwyn's (US Army BRL) System V on BSD package included Ron Natalie's version of the SVR2 {{mono|/bin/sh}} that had both job control and command line editing. This was a contemporary of the original {{mono|ksh}} at a time when it had not escaped AT&T. This was subsequently the {{mono|/bin/sh}} that shipped with all the CMU Mach-derived systems.<ref>{{cite web | url=https://tuhs.org/mailman3/hyperkitty/list/tuhs@tuhs.org/thread/L6YV554T3DNXIKKUPKX2UFC473TT7B6E/ | url-status=live | title="Job Control and other terminal fun" | first=Ron | last=Natalie | date=2023-01-30 | others=From the TUHS ("The Unix Heritage Society") mailing list | quote=... The Berkeley job control was an interesting hack. For us at BRL the problem was I absolutely detested the C shell syntax. The Korn shell hadn’t escaped from AT&T yet, so, I spent time figuring out how that really worked in the C shell (not really well documented), mostly by inspection, and then reimplemented it in the Bourne Shell (we were using the System V source code version for that). I still couldn’t get traction at BRL for using the Bourne shell because by that time, tcsh had come out with command line editing. So back to the shell sources I went. By this time, 5R2 had come out so I grabbed the shell source form[''sic''] that. [...] I reworked emacs-ish command line editing into the shell. Subsequently, I had a nice conversation with David Korn at USENIX, being probably at that point the two most familiar with Bourne shell job control internals. I also sat down with the guys writing either bash or the pdksh (can’t remember which) and explained all how this work[''sic'']. ... Years later I, had left the BRL, spent three years as a Rutgers administrator and was working for a small startup in Virginia. There was a MIPS workstation there. I was slogging along using ed... Not thinking about it, I attempted to retrieve a backgrounded job by typing “fg.” To my surprise the shell printed “Job control not enabled.” Hmm, I say. That sounds like my error message. “set -J” I type. “Job control enabled.” Hey! This is my shell. Turns out Doug Gwyn put my mods into his “System V on BSD” distribution tape and it had made its way into the Mach code base and so every Mach-derived system ended up with it. | access-date=2024-07-07 | archive-url=https://web.archive.org/web/20240707205154/https://www.tuhs.org/mailman3/hyperkitty/list/tuhs@tuhs.org/thread/L6YV554T3DNXIKKUPKX2UFC473TT7B6E/ | archive-date=2024-07-07 }}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)