KornShell - KornShell
Взаимодействие с OpenBSD оболочка по умолчанию, pdksh | |
Оригинальный автор (ы) | Дэвид Корн |
---|---|
изначальный выпуск | 1983[1][2] |
Стабильный выпуск | u + / 1 августа 2012 г.[3] |
Репозиторий | github |
Написано в | C |
Операционная система | Unix |
Доступно в | английский |
Тип | Оболочка Unix |
Лицензия |
|
Интернет сайт | www |
KornShell (кш
) это Оболочка Unix который был разработан Дэвид Корн в Bell Labs в начале 1980-х и объявлено на USENIX 14 июля 1983 г.[1][2] Первоначальная разработка была основана на Оболочка Борна исходный код.[7] Другими ранними участниками были разработчики Bell Labs Майк Вич и Пэт Салливан, написавшие Emacs и vi код режимов редактирования строк соответственно.[8] KornShell обратно совместим с оболочкой Bourne и включает многие функции Оболочка C, вдохновленный запросами пользователей Bell Labs.
Дизайн
KornShell соответствует POSIX.2, Оболочка и утилиты, Интерпретатор команд (IEEE Std 1003.2-1992.) Основные различия между KornShell и традиционной оболочкой Борна включают:
- Контроль работы, псевдоним команды, и история команд разработан после соответствующего Оболочка C Особенности. Управление заданиями было добавлено в Bourne Shell в 1989 году.[9]
- Выбор из трех стилей редактирования командной строки на основе vi, Emacs, и Гослинг Emacs.
- Ассоциативные массивы и встроенный арифметика с плавающей запятой операций (доступно только в кш93 версия KornShell).
- Динамическая расширяемость встроенных команд (начиная с кш93).
История
KornShell изначально проприетарное программное обеспечение. В 2000 году исходный код был выпущен под лицензией, характерной для AT&T, но с момента выпуска 93q в начале 2005 года он был лицензирован под лицензией Общественная лицензия Eclipse.[4] KornShell доступен как часть коллекции программного обеспечения с открытым исходным кодом AT&T Software Technology (AST). Поскольку KornShell изначально был доступен только по частной лицензии от AT&T, был создан ряд бесплатных альтернатив с открытым исходным кодом. К ним относятся pdksh, мкш, трепать, и zsh.
Функциональность оригинального KornShell, кш88, было положено в основу стандарта POSIX.2, Shell и служебные программы, интерпретатор команд (IEEE Std 1003.2-1992.)
Некоторые поставщики до сих пор выпускают собственные версии более старых кш88 вариант, иногда с расширениями. кш93 поддерживается на GitHub.[10]
Как "Desktop KornShell" (дткш), кш93 распространяется как часть Общая среда рабочего стола.[11] Эта версия также предоставляет сопоставления на уровне оболочки для Мотив виджеты. Он был задуман как конкурент Tcl /Тк.[12]
Оригинальный KornShell, кш88, стала оболочкой по умолчанию на AIX в версии 4,[13][14] Кш93 продается отдельно.[15]
UnixWare 7 включает оба кш88 и кш93. Оболочка Korn по умолчанию: кш93, который поставляется как / usr / bin / ksh, а более старая версия доступна как / usr / bin / ksh88.[16] UnixWare также включает дткш когда CDE установлен.
Дистрибутив ksh93 претерпел менее стабильную судьбу после того, как авторы покинули AT&T примерно в 2012 году на стабильной версии ksh93u +. Авторы продолжали работать над веткой ksh93v-beta примерно до 2014 года, когда несколько разработчиков сообщества по существу «взяли на себя управление» и продолжили работу над созданием сильно отремонтированного «ksh2020».[17] В марте 2020 года AT&T решила откатить изменения сообщества, спрятать их в ветке и перезапустить с ksh93u +, поскольку изменения были слишком широкими и слишком ориентированными на ksh, чтобы компания могла их внедрить в проект в режиме обслуживания.[18][19] Debian предлагает кш2020[20] в тестовой версии.[21]
Варианты
С KornShell связано несколько программных продуктов:
- дткш - вилка кш93 включен как часть CDE.
- tksh - вилка кш93 который обеспечивает доступ к Тк набор инструментов для виджетов.
- окш - порт OpenBSD вкус KornShell, предназначенный для максимальной портативности[22] в операционных системах. Он использовался в качестве оболочки по умолчанию в DeLi Linux 7.2.
- мкш - а свободный реализация языка KornShell, созданная на основе pdksh. Первоначально он был разработан для МирОС БСД и под лицензией снисходительный (хотя и не общественное достояние) условия; в частности, Лицензия MirOS.[6] Помимо использования в BSD, этот вариант заменил pdksh на Debian,[23] и является оболочкой по умолчанию на Android.
- СКШ - ан AmigaOS аромат, который предоставляет несколько специфичных для Amiga функций, таких как ARexx совместимость.
- MKS Inc. Оболочка MKS Korn - проприетарная реализация языка KornShell от Службы Microsoft Windows для UNIX (SFU) до версии 2.0; по словам Дэвида Корна, оболочка MKS Korn не была полностью совместима с KornShell в 1998 году.[24][25] В SFU версии 3.0 Microsoft заменил оболочку MKS Korn новой оболочкой, совместимой с POSIX.2 как часть Interix.[26]
- KornShell входит в UWIN, пакет совместимости с Unix, разработанный Дэвидом Корном.[27]
Смотрите также
Рекомендации
- ^ а б Рон Гомес (9 июня 1983 г.). «Расписание конференции USENIX в Торонто (предварительное)». Группа новостей: net.usenix. Получено 29 декабря, 2010.
- ^ а б Гай Харрис (10 октября 1983 г.). "вопрос csh". Группа новостей: net.flame. Получено 29 декабря, 2010.
- ^ "ksh93u + date = 10 февраля 2020 г.". Получено 10 февраля 2020.
- ^ а б «Архивная копия». Архивировано из оригинал на 2018-11-14. Получено 2018-12-10.CS1 maint: заархивированная копия как заголовок (связь)
- ^ «Архивная копия». Архивировано из оригинал на 2012-02-06. Получено 2010-06-10.CS1 maint: заархивированная копия как заголовок (связь)
- ^ а б «МирБСД Корн Шелл». Mirbsd.org. Получено 10 декабря 2018.
- ^ Корн, Дэвид Г. (26 октября 1994 г.), «ksh - расширяемый язык высокого уровня», Материалы симпозиума USENIX 1994 по языкам очень высокого уровня, Ассоциация USENIX, получено 5 февраля, 2015,
Вместо того, чтобы изобретать новый язык сценариев, мы создали систему ввода формы, изменив оболочку Bourne, добавив при необходимости встроенные команды.
- ^ Bolsky, Morris I .; Корн, Дэвид Г. (1989). «Благодарности». Командный язык и язык программирования KornShell. Энглвуд Клиффс, Нью-Джерси: Prentice Hall. стр. xii. ISBN 0-13-516972-0.
- ^ "традиционное семейство раковин Борна / история и развитие". In-ulm.de. Получено 10 декабря 2018.
- ^ «Это сайт для загрузки программного обеспечения AT&T Software Technology от компании AT&T Research. Коллекция программного обеспечения с открытым исходным кодом AT&T AST предоставляет обзор и практическое программное обеспечение UNIX многократного использования». Github.com. 10 декабря 2018 г.. Получено 10 декабря 2018.
- ^ Билл Розенблатт; Арнольд Роббинс (2002). Изучение оболочки Korn (2-е изд.). O'Reilly Media, Inc., стр. Viii – ix. ISBN 978-0-596-00195-7.
- ^ Дж. Стивен Пендерграст (1995). Графическое программирование Desktop KornShell. Эддисон-Уэсли. п. 359. ISBN 978-0-201-63375-7.
- ^ Кейси Кэннон; Скотт Трент; Кэролайн Джонс (1999). Просто AIX 4.3. Prentice Hall PTR. п. 21. ISBN 978-0-13-021344-0.
- ^ «Центр знаний IBM». Ibm.com. Получено 10 декабря 2018.
- ^ «Центр знаний IBM». Ibm.com. Получено 10 декабря 2018.
- ^ «Соответствие UNIX95». Uw714doc.sco.com. Получено 10 декабря 2018.
- ^ "Журнал изменений ksh2020". GitHub. 29 мая 2020.
- ^ «Перемотка репо и поощрение сообщества · Проблема № 1466 · att / ast». GitHub.
- ^ "segfault с расширенными глобусами · # 1464 · att / ast". GitHub.
- ^ "ksh2020 на GitHub". GitHub. 2 марта 2020.
- ^ "Отслеживание пакетов Debian - ksh". tracker.debian.org.
- ^ "окш на GitHub". GitHub. 1 августа 2020.
- ^ «Архивная копия». Архивировано из оригинал в 2014-07-28. Получено 2014-07-28.CS1 maint: заархивированная копия как заголовок (связь)
- ^ "Дэвид Корн говорит все". Slashdot. Получено 2009-10-22.
- ^ «Джерри Фельдман - участник конференции USENIX NT / LISA NT». Lists.blu.org. Получено 2009-10-22.
- ^ «Службы Windows для UNIX версии 3.0». Technet.microsoft.com. Получено 2009-10-22.
- ^ Анатоль Ольчак (2001). Оболочка Korn: руководство по программированию для Unix и Linux. Эддисон-Уэсли Профессионал. п. 4. ISBN 978-0-201-67523-8.
дальнейшее чтение
- Моррис И. Болский; Дэвид Г. Корн (1995). Новый язык команд и программирования KornShell. Prentice Hall PTR. ISBN 978-0-13-182700-4.
- Дэвид Г. Корн, Чарльз Дж. Нортрап и Джеффри Корн Новый KornShell - ksh93, Linux журнал, Выпуск 27, июль 1996 г.
внешняя ссылка
- страница руководства ksh93 на Wayback Machine (архивировано 5 июня 2013 г.)
- страница руководства ksh88 на Wayback Machine (архивировано 5 ноября 2015 г.)
- Оболочка Korn Public Domain (pdksh) на Wayback Machine (архивировано 21 октября 2016 г.)
- MirBSD Korn Shell (мкш)
- МирОС БСД Общие команды i386 Руководство –