Knowledge (XXG)

KornShell

Source 📝

1980:... 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 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. ... 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. 1190: 394: 286: 684: 38: 706:. KornShell is available as part of the AT&T Software Technology (AST) Open Source Software Collection. As KornShell was initially only available through a proprietary license from AT&T, a number of free and open source alternatives were created. These include 843:
in the fall of 2019. That initial release (although fixing several prior stability issues) introduced some minor breakage and compatibility issues. In March 2020, AT&T decided to roll back the community changes, stash them in a branch, and restart from
1487:"This is the AT&T Software Technology ast software download site from AT&T Research. The AT&T AST OpenSource Software Collection provides an overview and Practical Reusable UNIX Software." 1612: 989:
Besides the primary major contributing corporations (listed above), some companies have contributed free resources to the development of KSH. These are listed below (alphabetically ordered):
1968: 1590: 880:
in late 2019. Continuing development of follow-on versions (branches) of KSH have split into different groups starting in 2020 and are not elaborated on below.
876:
For the purposes of the lists below, the main software branch of KSH is defined as the original program, dating from July 1983, up and through the release of
1422:
Instead of inventing a new script language, we built a form entry system by modifying the Bourne shell, adding built-in commands as necessary.
848:, as the changes were too broad and too ksh-focused for the company to absorb into a project in maintenance mode. Bugfix development continues on the 563:, Shell and Utilities, Command Interpreter (IEEE Std 1003.2-1992.) Major differences between KornShell and the traditional Bourne shell include: 1834: 2254: 1325: 2115: 2006: 1947: 1574: 1549: 1522: 1195: 868:
and removal of some broken math functions, but has never been maintained or supported by AT&T (not even on its initial release date).
1144:(SFU) up to version 2.0; according to David Korn, the MKS Korn shell was not fully compatible with KornShell in 1998. In SFU version 3.0 1141: 547:-style line editing modes' code, respectively. KornShell is backward-compatible with the Bourne shell and includes many features of the 2051: 532: 2264: 1445: 1964: 2249: 1101: 1298: 892: 524: 60: 1405: 2041: 1203: 1064:'s variant of KornShell, intended to be maximally portable across operating systems. It was used as the default shell in 2259: 2223: 449: 340: 137: 1351: 1015: 423: 314: 188: 111: 89: 1034: 817: 760: 2108: 963: 948: 688: 603: 2027: 160: 2061: 1634: 539:
source code. Other early contributors were Bell Labs developers Mike Veach and Pat Sullivan, who wrote the
662:
object methods are called with the object variable name followed (after a dot character) by the method name
703: 482: 373: 260: 237: 228: 1236: 1208: 827:
distribution underwent a less stable fate after the authors left AT&T around 2012 at stable version
1269: 1838: 2244: 2101: 695: 1915: 1329: 204: 393: 1894: 968: 567: 1713: 1165:
in Doug Gwyn's (US Army BRL) System V on BSD package included Ron Natalie's version of the SVR2
1065: 665:
special object methods are called on: object initialization or assignment, object abandonment (
2205: 2190: 2155: 2140: 2002: 1943: 1570: 1545: 1518: 1441: 1019: 715: 599: 698:. In 2000 the source code was released under a license particular to AT&T, but since the 2160: 1937: 1512: 1273: 1240: 1169:
that had both job control and command line editing. This was a contemporary of the original
944:
The following are listed in a roughly ascending chronological order of their contributions:
888:
The following are listed in a roughly ascending chronological order of their contributions:
764: 586: 544: 477: 368: 216: 167: 683: 2185: 2065: 2055: 2045: 575: 571: 1780: 37: 2200: 2135: 1816: 1677: 1051: 285: 1873: 1798: 2238: 2022: 1996: 1435: 1140:'s MKS Korn shell – a proprietary implementation of the KornShell language from 1105: 1089: 1048: 772: 594: 251: 2145: 1753: 839:
in 2017 (due to customer requests) and resulted in the eventual initial release of
536: 2078: 958: 1539: 1244: 1213: 241: 1277: 2170: 2124: 1859: 1185: 835:
beta branch until around 2014. That work was eventually taken up primarily by
520: 409: 300: 209: 55: 2175: 2084: 1355: 1145: 1097: 1003: 895:(AT&T Bell Laboratories, AT&T Laboratories, and Google; and creator) 528: 176: 2017: 1461: 1148:
replaced the MKS Korn shell with a new POSIX.2-compliant shell as part of
672:
composition and aggregation is available, as well as a form of inheritance
17: 2088: 1695: 1137: 993: 860:
was released as a "major release for several reasons" such as removal of
789: 2210: 2150: 1696:"Rewinding this repo and encouraging community · Issue #1466 · att/ast" 1149: 1127: 1119: 1079: 1061: 978: 953: 836: 719: 659:
variables can be objects with member (sub-)variables and member methods
636:
dynamic extensibility of (dynamically loaded) built-in commands (since
579: 548: 43: 1173:
at a time when it had not escaped AT&T. This was subsequently the
2180: 998: 973: 861: 745: 1299:"Korn Shell Launcher for Windows Subsystem for Linux « Musings" 493: 898:
Glenn S. Fowler (AT&T Bell Laboratories, AT&T Laboratories)
733:, Shell and Utilities, Command Interpreter (IEEE Std 1003.2-1992). 1410:
Proceedings of the USENIX 1994 Very High Level Languages Symposium
1379: 1123: 1075: 730: 682: 590: 560: 540: 184: 180: 2071: 1659: 901:
Kiem-Phong Vo (AT&T Bell Laboratories, AT&T Laboratories)
346: 27:
Bourne shell backward compatible Unix shell created by David Korn
2195: 1156: 264: 172: 2097: 1731: 1122:
variant that provides several Amiga-specific features, such as
455: 2093: 2016:
David G. Korn; Charles J. Northrup; Jeffery Korn (July 1996).
1434:
Bolsky, Morris I.; Korn, David G. (1989). "Acknowledgements".
1092:
implementation of the KornShell language, forked from OpenBSD
783: 768: 1486: 1108:. In addition to its usage on BSD, this variant has replaced 913:
Matthijs N. Melchior (AT&T Network Systems International)
143: 1967:. From the TUHS ("The Unix Heritage Society") mailing list. 1895:"Jerry Feldman — USENIX NT/LISA NT conference attendee" 1462:"traditional Bourne shell family / history and development" 582:
features; job control was added to the Bourne Shell in 1989
864:
support, dropping support for binary plugins written for
736:
Some vendors still ship their own versions of the older
649:
variables can have member functions associated with them
535:
on July 14, 1983. The initial development was based on
585:
a choice of three command line editing styles based on
384: 278: 763:. This version also provides shell-level mappings for 1440:. Englewood Cliffs, NJ: Prentice Hall. pp. xii. 786:
in version 4, with ksh93 being available separately.
702:
release in early 2005 it has been licensed under the
1104:(though not public domain) terms; specifically, the 1177:
that shipped with all the CMU Mach-derived systems.
852:
branch, based on the last stable AT&T release (
488: 476: 468: 448: 422: 408: 379: 367: 359: 339: 313: 299: 273: 215: 203: 195: 166: 156: 136: 110: 88: 66: 54: 1998:The new KornShell command and programming language 1939:The Korn shell: Unix and Linux programming manual 1565:Casey Cannon; Scott Trent; Carolyn Jones (1999). 872:Primary contributions to the main software branch 1714:"segfault with extended globs · #1464 · att/ast" 1237:"Toronto USENIX Conference Schedule (tentative)" 910:Patrick D. Sullivan (AT&T Bell Laboratories) 1112:on Debian, and is the default shell on Android. 916:Karsten-Fleischer (Omnium Software Engineering) 551:, inspired by the requests of Bell Labs users. 1437:The KornShell Command and Programming Language 1082:'s variant of KornShell, with minimal changes. 2109: 1374: 1372: 1159:, a Unix compatibility package by David Korn. 907:Michael T. Veach (AT&T Bell Laboratories) 831:. The primary authors continued working on a 725:The functionality of the original KornShell, 8: 1768:Note: ksh2020 is not maintained or supported 767:widgets. It was intended as a competitor to 619:process substitution and process redirection 403: 294: 30: 305:Kurtis Rader, Siteshwar Vashisht, community 2116: 2102: 2094: 1942:. Addison-Wesley Professional. p. 4. 1754:"2020.0.0: Stable release of ksh-2020.0.0" 1517:(2 ed.). O'Reilly. pp. viii–ix. 1320: 1318: 402: 392: 293: 284: 36: 29: 1406:"ksh - An Extensible High Level Language" 959:AT&T Laboratories (now AT&T Labs) 1995:Morris I. Bolsky; David G. Korn (1995). 1511:Bill Rosenblatt; Arnold Robbins (2002). 1328:. AT&T Research. n.d. Archived from 1263: 1261: 808:, and the older version is available as 1916:"Windows Services for UNIX Version 3.0" 1541:Desktop KornShell graphical programming 1230: 1228: 1224: 904:Adam Edgar (AT&T Bell Laboratories) 729:, was used as a basis for the standard 414:Martijn Dekker, Johnothan King, hyenias 1965:""Job Control and other terminal fun"" 954:AT&T Network Systems International 7: 1835:"5.11. The PDKSH to MKSH transition" 1196:Free and open-source software portal 1126:interoperability. In this tradition 740:variant, sometimes with extensions. 531:in the early 1980s and announced at 1404:Korn, David G. (October 26, 1994), 1142:Microsoft Windows Services for UNIX 652:object-oriented-programming (since 1096:. It was originally developed for 606:operations (only available in the 25: 578:designed after the corresponding 2068: (archived October 21, 2016) 2062:Public Domain Korn shell (pdksh) 2058: (archived November 5, 2015) 2030:from the original on 2015-10-11. 1860:"Aminet - util/Shell/SKsh21.LZH" 1538:Pendergrast, J. Stephen (1995). 1188: 117:93v- / December 24, 2014 1971:from the original on 2024-07-07 1897:. Lists.blu.org. 29 August 1998 1544:. Addison-Wesley. p. 359. 884:Primary individual contributors 646:hierarchically nested variables 320:2020 / October 10, 2019 940:Primary corporate contributors 782:, became the default shell on 759:is distributed as part of the 1: 2255:Free software programmed in C 1569:. Prentice Hall. p. 21. 1204:Comparison of computer shells 625:enhanced expression-oriented 95:93u+ / August 1, 2012 2224:Comparison of command shells 2048: (archived June 5, 2013) 1047:that provides access to the 922:Siteshwar Vashisht (Red Hat) 800:. The default Korn shell is 613:dynamic search for functions 429:1.0.9 / July 2, 2024 1963:Natalie, Ron (2023-01-30). 1268:Guy Harris (Oct 10, 1983). 985:Donated corporate resources 964:Omnium Software Engineering 622:C-language-like expressions 72:; 41 years ago 2281: 949:AT&T Bell Laboratories 761:Common Desktop Environment 2219: 2131: 2018:"The New KornShell—ksh93" 1235:Ron Gomes (Jun 9, 1983). 1155:KornShell is included in 812:. UnixWare also includes 694:KornShell was originally 689:Windows Services for UNIX 604:floating-point arithmetic 444: 418: 335: 309: 132: 84: 35: 2265:Software that uses Meson 2072:MirBSD Korn Shell (mksh) 1781:"ksh 2020.0.0 CHANGELOG" 778:The original KornShell, 751:As "Desktop KornShell" ( 559:KornShell complies with 2250:Cross-platform software 1936:Anatole Olczak (2001). 1918:. Technet.microsoft.com 1514:Learning the Korn Shell 804:, which is supplied as 523:which was developed by 2087:i386 General Commands 1874:"David Korn Tells All" 1613:"IBM Knowledge Center" 1591:"IBM Knowledge Center" 1100:and is licensed under 930:Integration consultant 704:Eclipse Public License 691: 687:Korn Shell running on 616:mathematical functions 483:Eclipse Public License 431:; 2 months ago 374:Eclipse Public License 261:Eclipse Public License 229:Eclipse Public License 97:; 12 years ago 2001:. Prentice Hall PTR. 1209:List of Unix commands 686: 610:version of KornShell) 322:; 4 years ago 119:; 9 years ago 1635:"UNIX95 conformance" 1412:, USENIX Association 1033:included as part of 696:proprietary software 2260:Scripting languages 1742:. 17 November 2021. 1678:"ksh2020 changelog" 1380:"MirBSD Korn Shell" 643:reference variables 405: 296: 32: 1823:. 15 October 2021. 1492:. 10 December 2018 1332:on October 1, 2015 1326:"ast-open package" 1060: – a port of 1043: – a fork of 1029: – a fork of 1014:There are several 969:Oracle Corporation 692: 600:associative arrays 225:AT&T KornShell 56:Original author(s) 46:'s default shell, 2232: 2231: 2008:978-0-13-182700-4 1949:978-0-201-67523-8 1817:"loksh at GitHub" 1576:978-0-13-021344-0 1551:978-0-201-63375-7 1524:978-0-596-00195-7 1303:blog.fpmurphy.com 744:is maintained on 508: 507: 401: 400: 292: 291: 42:Interaction with 16:(Redirected from 2272: 2118: 2111: 2104: 2095: 2082: 2081: 2031: 2012: 1983: 1982: 1977: 1976: 1960: 1954: 1953: 1933: 1927: 1926: 1924: 1923: 1912: 1906: 1905: 1903: 1902: 1891: 1885: 1884: 1882: 1881: 1870: 1864: 1863: 1856: 1850: 1849: 1847: 1846: 1837:. Archived from 1831: 1825: 1824: 1813: 1807: 1806: 1805:. 1 August 2020. 1799:"oksh at GitHub" 1795: 1789: 1788: 1777: 1771: 1770: 1765: 1764: 1750: 1744: 1743: 1728: 1722: 1721: 1710: 1704: 1703: 1692: 1686: 1685: 1674: 1668: 1667: 1656: 1650: 1649: 1647: 1645: 1639:Uw714doc.sco.com 1631: 1625: 1624: 1622: 1620: 1609: 1603: 1602: 1600: 1598: 1587: 1581: 1580: 1562: 1556: 1555: 1535: 1529: 1528: 1508: 1502: 1501: 1499: 1497: 1483: 1477: 1476: 1474: 1472: 1458: 1452: 1451: 1431: 1425: 1424: 1419: 1417: 1401: 1395: 1394: 1392: 1390: 1376: 1367: 1366: 1364: 1363: 1354:. Archived from 1348: 1342: 1341: 1339: 1337: 1322: 1313: 1312: 1310: 1309: 1295: 1289: 1288: 1286: 1284: 1265: 1256: 1255: 1253: 1251: 1232: 1198: 1193: 1192: 1191: 1176: 1172: 1168: 1164: 1133: 1117: 1111: 1095: 1087: 1073: 1059: 1046: 1042: 1032: 1028: 815: 811: 807: 803: 799: 795: 792:7 includes both 781: 758: 754: 743: 739: 728: 713: 709: 668: 655: 639: 632: 628: 609: 572:command aliasing 518: 504: 501: 499: 497: 495: 464: 461: 459: 457: 439: 437: 432: 406: 397: 396: 389: 386: 355: 352: 350: 348: 330: 328: 323: 297: 288: 283: 280: 187:; also works in 168:Operating system 152: 149: 147: 145: 127: 125: 120: 105: 103: 98: 80: 78: 73: 49: 40: 33: 21: 2280: 2279: 2275: 2274: 2273: 2271: 2270: 2269: 2235: 2234: 2233: 2228: 2215: 2127: 2122: 2077: 2076: 2066:Wayback Machine 2056:Wayback Machine 2046:Wayback Machine 2038: 2015: 2009: 1994: 1991: 1989:Further reading 1986: 1974: 1972: 1962: 1961: 1957: 1950: 1935: 1934: 1930: 1921: 1919: 1914: 1913: 1909: 1900: 1898: 1893: 1892: 1888: 1879: 1877: 1872: 1871: 1867: 1858: 1857: 1853: 1844: 1842: 1833: 1832: 1828: 1815: 1814: 1810: 1797: 1796: 1792: 1779: 1778: 1774: 1762: 1760: 1752: 1751: 1747: 1730: 1729: 1725: 1712: 1711: 1707: 1694: 1693: 1689: 1676: 1675: 1671: 1658: 1657: 1653: 1643: 1641: 1633: 1632: 1628: 1618: 1616: 1611: 1610: 1606: 1596: 1594: 1589: 1588: 1584: 1577: 1564: 1563: 1559: 1552: 1537: 1536: 1532: 1525: 1510: 1509: 1505: 1495: 1493: 1485: 1484: 1480: 1470: 1468: 1460: 1459: 1455: 1448: 1433: 1432: 1428: 1415: 1413: 1403: 1402: 1398: 1388: 1386: 1378: 1377: 1370: 1361: 1359: 1350: 1349: 1345: 1335: 1333: 1324: 1323: 1316: 1307: 1305: 1297: 1296: 1292: 1282: 1280: 1267: 1266: 1259: 1249: 1247: 1234: 1233: 1226: 1222: 1194: 1189: 1187: 1184: 1174: 1170: 1166: 1162: 1131: 1115: 1109: 1093: 1085: 1071: 1057: 1044: 1040: 1030: 1026: 1012: 987: 942: 932: 886: 874: 813: 809: 805: 801: 797: 793: 779: 756: 752: 741: 737: 726: 711: 707: 681: 666: 653: 637: 630: 626: 607: 576:command history 557: 514: 492: 454: 440: 435: 433: 430: 391: 383: 345: 331: 326: 324: 321: 277: 269: 142: 128: 123: 121: 118: 112:Preview release 106: 101: 99: 96: 76: 74: 71: 67:Initial release 50: 47: 28: 23: 22: 15: 12: 11: 5: 2278: 2276: 2268: 2267: 2262: 2257: 2252: 2247: 2237: 2236: 2230: 2229: 2227: 2226: 2220: 2217: 2216: 2214: 2213: 2208: 2203: 2198: 2193: 2188: 2183: 2178: 2173: 2168: 2163: 2158: 2153: 2148: 2143: 2138: 2132: 2129: 2128: 2123: 2121: 2120: 2113: 2106: 2098: 2092: 2091: 2074: 2069: 2059: 2052:ksh88 man page 2049: 2042:ksh93 man page 2037: 2036:External links 2034: 2033: 2032: 2013: 2007: 1990: 1987: 1985: 1984: 1955: 1948: 1928: 1907: 1886: 1865: 1851: 1826: 1808: 1790: 1772: 1745: 1723: 1705: 1687: 1684:. 29 May 2020. 1669: 1666:. 26 Feb 2021. 1651: 1626: 1604: 1582: 1575: 1567:Simply AIX 4.3 1557: 1550: 1530: 1523: 1503: 1478: 1453: 1446: 1426: 1396: 1368: 1343: 1314: 1290: 1270:"csh question" 1257: 1223: 1221: 1218: 1217: 1216: 1211: 1206: 1200: 1199: 1183: 1180: 1179: 1178: 1160: 1153: 1135: 1113: 1083: 1069: 1055: 1052:widget toolkit 1038: 1022:of KornShell: 1011: 1008: 1007: 1006: 1001: 996: 986: 983: 982: 981: 976: 971: 966: 961: 956: 951: 941: 938: 937: 936: 931: 928: 927: 926: 923: 920: 917: 914: 911: 908: 905: 902: 899: 896: 885: 882: 873: 870: 820:is installed. 810:/usr/bin/ksh88 680: 677: 676: 675: 674: 673: 670: 663: 660: 650: 647: 644: 641: 634: 623: 620: 617: 614: 611: 597: 583: 556: 553: 506: 505: 490: 486: 485: 480: 474: 473: 470: 466: 465: 452: 446: 445: 442: 441: 428: 426: 424:Stable release 420: 419: 416: 415: 412: 399: 398: 381: 377: 376: 371: 365: 364: 361: 357: 356: 343: 337: 336: 333: 332: 319: 317: 311: 310: 307: 306: 303: 290: 289: 275: 271: 270: 268: 267: 254: 245: 231: 221: 219: 213: 212: 207: 201: 200: 197: 193: 192: 170: 164: 163: 158: 154: 153: 140: 134: 133: 130: 129: 116: 114: 108: 107: 94: 92: 86: 85: 82: 81: 68: 64: 63: 58: 52: 51: 41: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 2277: 2266: 2263: 2261: 2258: 2256: 2253: 2251: 2248: 2246: 2243: 2242: 2240: 2225: 2222: 2221: 2218: 2212: 2209: 2207: 2204: 2202: 2199: 2197: 2194: 2192: 2189: 2187: 2184: 2182: 2179: 2177: 2174: 2172: 2169: 2167: 2164: 2162: 2159: 2157: 2154: 2152: 2149: 2147: 2144: 2142: 2139: 2137: 2134: 2133: 2130: 2126: 2119: 2114: 2112: 2107: 2105: 2100: 2099: 2096: 2090: 2086: 2083: –  2080: 2075: 2073: 2070: 2067: 2063: 2060: 2057: 2053: 2050: 2047: 2043: 2040: 2039: 2035: 2029: 2025: 2024: 2023:Linux Journal 2019: 2014: 2010: 2004: 2000: 1999: 1993: 1992: 1988: 1981: 1970: 1966: 1959: 1956: 1951: 1945: 1941: 1940: 1932: 1929: 1917: 1911: 1908: 1896: 1890: 1887: 1875: 1869: 1866: 1861: 1855: 1852: 1841:on 2014-07-28 1840: 1836: 1830: 1827: 1822: 1818: 1812: 1809: 1804: 1800: 1794: 1791: 1787:. 2021-01-29. 1786: 1782: 1776: 1773: 1769: 1759: 1755: 1749: 1746: 1741: 1737: 1735: 1727: 1724: 1719: 1715: 1709: 1706: 1701: 1697: 1691: 1688: 1683: 1679: 1673: 1670: 1665: 1661: 1655: 1652: 1640: 1636: 1630: 1627: 1614: 1608: 1605: 1592: 1586: 1583: 1578: 1572: 1568: 1561: 1558: 1553: 1547: 1543: 1542: 1534: 1531: 1526: 1520: 1516: 1515: 1507: 1504: 1491: 1488: 1482: 1479: 1467: 1463: 1457: 1454: 1449: 1447:0-13-516972-0 1443: 1439: 1438: 1430: 1427: 1423: 1411: 1407: 1400: 1397: 1385: 1381: 1375: 1373: 1369: 1358:on 2012-02-06 1357: 1353: 1347: 1344: 1331: 1327: 1321: 1319: 1315: 1304: 1300: 1294: 1291: 1279: 1275: 1271: 1264: 1262: 1258: 1246: 1242: 1238: 1231: 1229: 1225: 1219: 1215: 1212: 1210: 1207: 1205: 1202: 1201: 1197: 1186: 1181: 1161: 1158: 1154: 1151: 1147: 1143: 1139: 1136: 1129: 1125: 1121: 1114: 1107: 1106:MirOS Licence 1103: 1099: 1091: 1084: 1081: 1077: 1070: 1067: 1063: 1056: 1053: 1050: 1039: 1036: 1025: 1024: 1023: 1021: 1017: 1009: 1005: 1002: 1000: 997: 995: 992: 991: 990: 984: 980: 977: 975: 972: 970: 967: 965: 962: 960: 957: 955: 952: 950: 947: 946: 945: 939: 934: 933: 929: 925:Kurtis Raider 924: 921: 918: 915: 912: 909: 906: 903: 900: 897: 894: 893:David G. Korn 891: 890: 889: 883: 881: 879: 871: 869: 867: 863: 859: 856:2012-08-01). 855: 851: 847: 842: 838: 834: 830: 826: 821: 819: 791: 787: 785: 776: 774: 770: 766: 762: 749: 747: 734: 732: 723: 721: 717: 705: 701: 697: 690: 685: 678: 671: 664: 661: 658: 657: 651: 648: 645: 642: 635: 624: 621: 618: 615: 612: 605: 602:and built-in 601: 598: 596: 595:Gosling Emacs 592: 588: 584: 581: 577: 573: 569: 566: 565: 564: 562: 554: 552: 550: 546: 542: 538: 534: 530: 526: 522: 517: 512: 503: 491: 487: 484: 481: 479: 475: 471: 467: 463: 453: 451: 447: 443: 427: 425: 421: 417: 413: 411: 407: 395: 388: 382: 378: 375: 372: 370: 366: 362: 358: 354: 344: 342: 338: 334: 318: 316: 315:Final release 312: 308: 304: 302: 298: 287: 282: 276: 272: 266: 262: 258: 255: 253: 252:MirOS Licence 249: 246: 243: 239: 238:Public domain 235: 232: 230: 226: 223: 222: 220: 218: 214: 211: 208: 206: 202: 198: 194: 190: 186: 182: 178: 174: 171: 169: 165: 162: 159: 155: 151: 141: 139: 135: 131: 115: 113: 109: 93: 91: 90:Final release 87: 83: 69: 65: 62: 59: 57: 53: 45: 39: 34: 19: 2165: 2021: 1997: 1979: 1973:. Retrieved 1958: 1938: 1931: 1920:. Retrieved 1910: 1899:. Retrieved 1889: 1878:. Retrieved 1868: 1854: 1843:. Retrieved 1839:the original 1829: 1820: 1811: 1802: 1793: 1784: 1775: 1767: 1761:. Retrieved 1757: 1748: 1739: 1733: 1726: 1717: 1708: 1699: 1690: 1681: 1672: 1663: 1654: 1642:. Retrieved 1638: 1629: 1617:. Retrieved 1607: 1595:. Retrieved 1585: 1566: 1560: 1540: 1533: 1513: 1506: 1494:. Retrieved 1489: 1481: 1469:. Retrieved 1465: 1456: 1436: 1429: 1421: 1414:, retrieved 1409: 1399: 1387:. Retrieved 1383: 1360:. Retrieved 1356:the original 1346: 1336:December 19, 1334:. Retrieved 1330:the original 1306:. Retrieved 1302: 1293: 1281:. Retrieved 1248:. Retrieved 1013: 988: 943: 935:Roland Mainz 887: 877: 875: 865: 857: 853: 849: 845: 840: 832: 828: 824: 822: 806:/usr/bin/ksh 788: 777: 750: 735: 724: 699: 693: 558: 537:Bourne shell 515: 510: 509: 410:Developer(s) 301:Developer(s) 256: 247: 233: 224: 196:Available in 2245:Unix shells 2125:Unix shells 1644:10 December 1619:10 December 1597:10 December 1496:10 December 1471:10 December 1416:February 5, 1389:10 December 1214:test (Unix) 1134:in its SDK. 1118: – an 919:Boyer-Moore 568:job control 469:Predecessor 360:Predecessor 2239:Categories 2171:PowerShell 1975:2024-07-07 1922:2009-10-22 1901:2009-10-22 1880:2009-10-22 1876:. Slashdot 1845:2014-07-28 1763:2021-01-29 1490:Github.com 1384:Mirbsd.org 1362:2010-06-10 1308:2021-01-29 1245:net.usenix 1220:References 1102:permissive 1088: – a 1074: – a 1066:DeLi Linux 525:David Korn 521:Unix shell 450:Repository 436:2024-07-02 341:Repository 327:2019-10-10 263:with some 244:-like code 240:with some 210:Unix shell 189:Windows 10 157:Written in 138:Repository 124:2014-12-24 102:2012-08-01 61:David Korn 18:Korn shell 2085:MirOS BSD 1660:"ksh2020" 1466:In-ulm.de 1278:net.flame 1274:Newsgroup 1241:Newsgroup 1146:Microsoft 1098:MirOS BSD 1004:Travis CI 529:Bell Labs 511:KornShell 385:kornshell 279:kornshell 177:Unix-like 31:KornShell 2201:Thompson 2161:Hamilton 2136:Almquist 2028:Archived 1969:Archived 1182:See also 1138:MKS Inc. 1078:port of 1010:Variants 994:Coverity 850:ksh93u+m 790:UnixWare 555:Features 404:ksh93u+m 351:/ksh2020 2079:mksh(1) 2064:at the 2054:at the 2044:at the 1352:"LEGAL" 1283:Dec 29, 1276::  1250:Dec 29, 1243::  1175:/bin/sh 1167:/bin/sh 1163:/bin/sh 1150:Interix 1128:MorphOS 1120:AmigaOS 1080:OpenBSD 1062:OpenBSD 979:Red Hat 878:KSH2020 866:ksh93u+ 858:ksh2020 854:ksh93u+ 846:ksh93u+ 841:ksh2020 837:Red Hat 833:ksh93v- 829:ksh93u+ 731:POSIX.2 720:Z shell 679:History 580:C shell 561:POSIX.2 549:C shell 519:) is a 489:Website 478:License 434: ( 380:Website 369:License 325: ( 295:ksh2020 274:Website 217:License 199:English 122: ( 100: ( 75: ( 44:OpenBSD 2181:Qshell 2146:Bourne 2089:Manual 2026:(27). 2005:  1946:  1821:GitHub 1803:GitHub 1785:GitHub 1758:GitHub 1740:GitHub 1718:GitHub 1700:GitHub 1682:GitHub 1664:GitHub 1573:  1548:  1521:  1444:  1020:clones 999:GitHub 974:Google 862:EBCDIC 746:GitHub 718:, and 700:ksh93q 654:ksh93t 593:, and 574:, and 533:USENIX 498:/ksh93 494:github 460:/ksh93 456:github 390:  347:github 179:(e.g. 144:github 1734:93u+m 1732:"ksh 1615:. IBM 1593:. IBM 1132:pdksh 1130:uses 1124:ARexx 1110:pdksh 1094:pdksh 1076:Linux 1072:loksh 1045:ksh93 1031:ksh93 1027:dtksh 1016:forks 825:ksh93 816:when 814:dtksh 802:ksh93 798:ksh93 794:ksh88 780:ksh88 765:Motif 757:ksh93 753:dtksh 742:ksh93 738:ksh88 727:ksh88 708:pdksh 667:unset 638:ksh93 633:loops 631:while 608:ksh93 591:Emacs 541:Emacs 502:/wiki 257:dtksh 234:pdksh 185:macOS 181:Linux 48:pdksh 2206:Wish 2196:tcsh 2191:sash 2166:Korn 2156:fish 2141:Bash 2003:ISBN 1944:ISBN 1646:2018 1621:2018 1599:2018 1571:ISBN 1546:ISBN 1519:ISBN 1498:2018 1473:2018 1442:ISBN 1418:2015 1391:2018 1338:2022 1285:2010 1252:2010 1157:UWIN 1116:SKsh 1090:free 1086:mksh 1068:7.2. 1058:oksh 1041:tksh 1018:and 823:The 796:and 716:Bash 712:mksh 629:and 543:and 500:/ksh 496:.com 472:93u+ 462:/ksh 458:.com 387:.com 363:93v- 353:/ksh 349:.com 281:.com 265:LGPL 248:mksh 205:Type 183:and 175:and 173:Unix 150:/ast 148:/att 146:.com 77:1983 70:1983 2211:Zsh 2176:PWB 2151:csh 1171:ksh 1035:CDE 818:CDE 784:AIX 769:Tcl 755:), 627:for 527:at 516:ksh 242:ISC 2241:: 2186:rc 2020:. 1978:. 1819:. 1801:. 1783:. 1766:. 1756:. 1738:. 1716:. 1698:. 1680:. 1662:. 1637:. 1464:. 1420:, 1408:, 1382:. 1371:^ 1317:^ 1301:. 1272:. 1260:^ 1239:. 1227:^ 1049:Tk 775:. 773:Tk 748:. 722:. 714:, 710:, 656:) 589:, 587:vi 570:, 545:vi 259:: 250:: 236:: 227:: 2117:e 2110:t 2103:v 2011:. 1952:. 1925:. 1904:. 1883:. 1862:. 1848:. 1736:" 1720:. 1702:. 1648:. 1623:. 1601:. 1579:. 1554:. 1527:. 1500:. 1475:. 1450:. 1393:. 1365:. 1340:. 1311:. 1287:. 1254:. 1152:. 1054:. 1037:. 771:/ 669:) 640:) 513:( 438:) 329:) 191:) 161:C 126:) 104:) 79:) 20:)

Index

Korn shell

OpenBSD
Original author(s)
David Korn
Final release
Preview release
Repository
github.com/att/ast
C
Operating system
Unix
Unix-like
Linux
macOS
Windows 10
Type
Unix shell
License
Eclipse Public License
Public domain
ISC
MirOS Licence
Eclipse Public License
LGPL
kornshell.com
Edit this at Wikidata
Developer(s)
Final release
Repository

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.