Thompson shell

Thompson shell
Тип Командная оболочка Unix
Автор Кен Томпсон
Разработчик Лаборатории Белла
Операционные системы Unix и Unix-подобные
Дата выпуска 3 ноября 1971; 54 года назад (1971-11-03)

Thompson shell (оболочка Томпсона) — это первая командная оболочка UNIX. Разработана Кеном Томпсоном в 1971 году для первой версии UNIX. Кен Томпсон совместно с Денисом Ритчи являются ни много ни мало создателями операционной система Unix и языка программирования C. Тут следует сделать небольшое отступление – все шеллы до Borne Shell были больше нацелены на выполнения команд (интерактивный режим), а не для скриптов.Thompson Shell создавался очень минималистичным, в одной из последних был реализован концепт пайпов (command1 > command2), но в остальном даже такие простые вещи как if были сделаны отдельными командами — основной функционал был направлен именно на выполнение команд.

В 1975, PWB (Mashey) shell - разработан Джоном Маши (John Mashey) в Bell Labs для PWB (Programmer’s Workbench) Unix - дистрибутив для разработчиков (но не взлетел). Основан на Thompson Shell c фичами для упрощения разработки.

В Mashey shell if, elseif, goto (и другие) были добавлены как часть самого шелла, появились аналоги $HOME, $PATH.

Bourne Shell был написан с нуля, фичи обсуждались с участниками сообщества, плюс популярность после публикации книги The Unix Programming Environment Брайна Кернигана и Роба Пайка — все это сыграло в пользу Borne Shell и разработка Mashey Shell была прекращена, хотя достаточно много фич из Mashey были реализованы в Borne.

В 1979 году заменена более совершенными оболочками: sh в седьмой версии UNIX и csh во второй версии BSD.

Дополнение о функциональности Thompson shell

Thompson shell поддерживала базовые команды, такие как ls, cd, cp, и rm, которые стали стандартными для последующих оболочек. Одной из ключевых инноваций стала поддержка пайпов (pipes), которые позволяли передавать вывод одной команды на вход другой. Однако, в отличие от современных оболочек, Thompson shell не поддерживала сложные сценарии и скрипты, так как её основная задача заключалась в интерактивном использовании. Например, для выполнения условных операторов (if/else) требовалось использовать отдельные команды, что делало написание скриптов неудобным.

Ссылки: [1]

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.