跳转到内容

KornShell

维基百科,自由的百科全书
KornShell
原作者大卫·科恩英语David Korn (computer scientist)
首次发布1983[1][2]
当前版本ksh93u+(2013年6月1日,​11年前​(2013-06-01[3]
编程语言C
操作系统Unix
语言英语
类型Unix shell
许可协议
网站www.kornshell.org

KornShellksh)是一款由大卫·科恩英语David Korn (computer scientist)于二十世纪八十年代早期在贝尔实验室开发的Unix shell,并在1983年7月14日的USENIX年度技术会议英语USENIX Annual Technical Conference上发布。[1][2]起初此软件基于Bourne shell的源代码编写。[7]其他贡献者有贝尔实验室的开发者,如迈克·维奇(Mike Veach)和帕特·沙利文(Pat Sullivan);他们分别编写了Emacsvi风格的行编辑模式代码。[8]KornShell向后兼容Bourne shell,同时还根据贝尔实验室用户的需求添加了诸多C shell的功能。

设计

[编辑]

KornShell实现了POSIX.2,同时拥有壳层及实用工具、命令解释器(IEEE Std 1003.2-1992.)。KornShell与传统的Bourne shell的主要差别有:

历史

[编辑]
OpenBSD默认壳层(pdksh)的交互界面

KornShell起初是一款专有软件。2000年,其源代码以AT&T独有的许可发布;但在2005年年初,93q版本使用Eclipse公共许可证发布。由于KornShell起初为私有授权软件,在那时的人们创造了自由开源的替代品(pdkshmkshGNU bashzsh)。 [4]KornShell被收录进了AT&T软件技术(AST)开源软件集。

KornShell的原始版本(ksh88)被当做POSIX.2、壳层及实用工具、命令解释器(IEEE Std 1003.2-1992.)的基础。

部分供应商有时会提供其自己根据老版本ksh88改编的变体,有时还会在其基础上添加扩展。ksh93现仍被作者维护,并通过在其后添加字母的方式命名发布版本;截至2017年1月16日 (2017-01-16)的最新版本为ksh93u+ksh93uksh93t+的更新版);ksh93v仍处于测试阶段(截至2017年1月16日 (2017-01-16))。[10]

作为“桌面版KornShell”(dtksh),ksh93作为通用桌面环境的一部分发布。[11]此版本同时提供了对Motif挂件的壳层级映射。它的目的是成为Tcl/Tk的竞争对手。[12]

原版KornShell(ksh88)成为了AIX第四版的默认壳层,[13][14]但同时也可使用ksh93。[15]

UnixWare英语UnixWare 7中既包括ksh88,也包括ksh93。默认的Kornshell版本为ksh93/usr/bin/ksh),老版本则在/usr/bin/ksh88下可用。[16]UnixWare同时在安装了CDE的情况下提供{{mono|dtksh}。

变体

[编辑]

下列为多个与KornShel相关的软件产品:

另请参阅

[编辑]

参考文献

[编辑]
  1. ^ 1.0 1.1 Ron Gomes. Toronto USENIX Conference Schedule (tentative). Newsgroupnet.usenix. Jun 9, 1983 [Dec 29, 2010]. (原始内容存档于2013-06-02). 
  2. ^ 2.0 2.1 Guy Harris. csh question. Newsgroupnet.flame. Oct 10, 1983 [Dec 29, 2010]. (原始内容存档于2013-06-02). 
  3. ^ package changes from 2013-05-24 to 2013-06-01. 14 February 2015 [10 December 2018]. (原始内容存档于2015-02-14). 
  4. ^ 4.0 4.1 Archived copy. [2018-12-10]. (原始内容存档于2018-11-14). 
  5. ^ 6.0 6.1 MirBSD Korn Shell. Mirbsd.org. [10 December 2018]. (原始内容存档于2015-08-01). 
  6. ^ Korn, David G., ksh - An Extensible High Level Language, Proceedings of the USENIX 1994 Very High Level Languages Symposium (USENIX Association), October 26, 1994 [February 5, 2015], (原始内容存档于2020-08-23), Instead of inventing a new script language, we built a form entry system by modifying the Bourne shell, adding built-in commands as necessary. 
  7. ^ Bolsky, Morris I.; Korn, David G. Acknowledgements. The KornShell Command and Programming Language. Englewood Cliffs, NJ: Prentice Hall. 1989: xii. ISBN 0-13-516972-0. 
  8. ^ traditional Bourne shell family / history and development. In-ulm.de. [10 December 2018]. (原始内容存档于2020-04-14). 
  9. ^ 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... Github.com. 10 December 2018 [10 December 2018]. (原始内容存档于2020-10-31). 
  10. ^ Bill Rosenblatt; Arnold Robbins. Learning the Korn Shell 2. O'Reilly Media, Inc. 2002: viii–ix [2019-05-04]. ISBN 978-0-596-00195-7. (原始内容存档于2020-08-04). 
  11. ^ J. Stephen Pendergrast. Desktop KornShell graphical programming. Addison-Wesley. 1995: 359 [2019-05-04]. ISBN 978-0-201-63375-7. (原始内容存档于2020-08-04). 
  12. ^ Casey Cannon; Scott Trent; Carolyn Jones. Simply AIX 4.3. Prentice Hall PTR. 1999: 21. ISBN 978-0-13-021344-0. 
  13. ^ IBM Knowledge Center. Ibm.com. [10 December 2018]. (原始内容存档于2019-08-09). 
  14. ^ IBM Knowledge Center. Ibm.com. [10 December 2018]. (原始内容存档于2019-08-09). 
  15. ^ UNIX95 conformance. Uw714doc.sco.com. [10 December 2018]. (原始内容存档于2020-08-02). 
  16. ^ Archived copy. [2014-07-28]. (原始内容存档于2014-07-28). 
  17. ^ David Korn Tells All. Slashdot. [2009-10-22]. (原始内容存档于2009-06-16). 
  18. ^ Jerry Feldman — USENIX NT/LISA NT conference attendee. Lists.blu.org. [2009-10-22]. (原始内容存档于2012-02-26). 
  19. ^ Windows Services for UNIX Version 3.0. Technet.microsoft.com. [2009-10-22]. (原始内容存档于2017-08-26). 
  20. ^ Anatole Olczak. The Korn shell: Unix and Linux programming manual. Addison-Wesley Professional. 2001: 4 [2019-05-04]. ISBN 978-0-201-67523-8. (原始内容存档于2020-08-04). 

延伸阅读

[编辑]

外部链接

[编辑]