<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Thompson-Shell</id>
	<title>Thompson-Shell - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Thompson-Shell"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Thompson-Shell&amp;action=history"/>
	<updated>2026-05-22T06:45:04Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Thompson-Shell&amp;diff=352416&amp;oldid=prev</id>
		<title>imported&gt;Invisigoth67: typo</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Thompson-Shell&amp;diff=352416&amp;oldid=prev"/>
		<updated>2023-02-14T17:23:08Z</updated>

		<summary type="html">&lt;p&gt;typo&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Der mit [[Unix|UNIX]] ab 1969 entwickelte [[Kommandozeileninterpreter]] &amp;lt;code&amp;gt;sh&amp;lt;/code&amp;gt; wird [[retronym]] nach dessen Entwickler [[Ken Thompson]] als &amp;#039;&amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039;&amp;#039; bezeichnet.&amp;lt;ref&amp;gt;{{Literatur |Hrsg=University of Michigan |Titel=Programmer&amp;#039;s Journal |Band=5 |Verlag=Avant-Garde Creations |Datum=1987 |Sprache=en |Seiten=16 |Online={{Google Buch |BuchID=214qAAAAMAAJ |Seite=16 |Linktext=keine Vorschau verfügbar |Hervorhebung=Thompson shell |KeinText=1}} |Zitat=Ken Thompson, the father of Unix, wrote the very first rudimentary command interface for Ma Bell&amp;#039;s OS—in typical researcher fashion calling it the Thompson shell.}}&amp;lt;/ref&amp;gt; Ursprünglich in [[Assemblersprache|Assembler]] geschrieben, wurde die originale [[Unix-Shell]] 1973 gemeinsam mit UNIX Version&amp;amp;nbsp;4 in [[C (Programmiersprache)|C]] neu implementiert.&lt;br /&gt;
&lt;br /&gt;
Die &amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039; ist eine erste, sehr rudimentäre Variante einer Unix-Shell, jedoch gehen viele spätere, verbesserte und erweiterte Unix-Shells auf sie zurück. Auf modernen Unix- und [[Unixoides System|Unix-artigen]] Systemen wird sie nicht mehr verwendet, allerdings wurde die letzte Version für moderne Systeme [[#Reimplementierung|reimplementiert]].&lt;br /&gt;
&lt;br /&gt;
== Geschichte ==&lt;br /&gt;
{{Siehe auch|Geschichte von Unix}}&lt;br /&gt;
{{Siehe auch|Unix-Shell#Die frühen Shells|titel1=„Die frühen Shells“ im Artikel Unix-Shell}}&lt;br /&gt;
UNICS, wie das System 1969 als Wortwitz und Anspielung auf das frühere Betriebssystemprojekt [[Multics]] genannt wurde, bediente sich an einigen der Konzepte von Multics, an dem einige spätere Unixentwickler wie Ken Thompson, [[Douglas McIlroy|Doug McIlroy]], [[Dennis Ritchie]] und [[Joseph Ossanna]] kurze Zeit mitgearbeitet hatten.&amp;lt;ref&amp;gt;{{Literatur |Autor=Isrd |Titel=Basics Of Os Unix And Shell Programming |Verlag=Tata McGraw-Hill Education |Datum=2006 |Sprache=en |ISBN=978-0-07-061681-3 |Online={{Google Buch |BuchID=SEP9CXbX5a4C |Seite=35 |Hervorhebung=UNIX shell}} |Zitat=MULTICS exerted a strong influence on the new operating system. The basic file system organization, the idea of the shell as a user process, use of separate process for each command and similar other features were inherited from it.}}&amp;lt;/ref&amp;gt; Eines davon war die &amp;#039;&amp;#039;Shell&amp;#039;&amp;#039;.&amp;lt;ref&amp;gt;{{Literatur |Autor=Michael L. Scott |Titel=Programming Language Pragmatics |Verlag=Morgan Kaufmann |Datum=2009 |Sprache=en |ISBN=978-0-08-092299-7 |Online={{Google Buch |BuchID=GBISkhhrHh8C |Seite=656 |Hervorhebung=shell}} |Zitat=When work began on the groundbreaking Multics system in 1964, [Louis] Pouzin sketched the design of an extended command language, with quoting and argument-passing mechanisms, for which he coined the term “shell.”}}&amp;lt;/ref&amp;gt; So bestand UNIX – die Schreibweise wurde spätestens 1971 mit der Veröffentlichung der ersten Version verwendet – neben dem [[Kernel (Betriebssystem)|Kernel]] im Weiteren aus den Kernbestandteilen &amp;#039;&amp;#039;Unix-Dateisystem&amp;#039;&amp;#039; und &amp;#039;&amp;#039;Unix-Shell&amp;#039;&amp;#039;.&amp;lt;ref&amp;gt;{{Literatur |Autor=S.K. Bajpai |Titel=Introduction To Computers And C Programming |Verlag=New Age International |Datum=2007 |Sprache=en |ISBN=978-81-224-1379-3 |Online={{Google Buch |BuchID=4hpKj29LPuAC |Seite=210 |Hervorhebung=Kernel Shell file system}} |Zitat=UNIX … has basically following parts: Kernel …, Shell …, The file system …}}&amp;lt;/ref&amp;gt; Bereits 1972 wurde das Befehls- und Filterketten-Konzept (&amp;#039;&amp;#039;pipes&amp;#039;&amp;#039;) von Doug McIlroy in dieser Shell realisiert.&lt;br /&gt;
&lt;br /&gt;
Die &amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039; (&amp;lt;code&amp;gt;sh&amp;lt;/code&amp;gt;) war bis zur Veröffentlichung von V7 UNIX (1979) die Standard-Shell von AT&amp;amp;T-UNIX. Bereits in den 1970er Jahren wurde von [[Stephen R. Bourne]] eine verbesserte Unix-Shell entwickelt, die ab V7 UNIX die &amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039; ablöste. Die [[Bourne-Shell]] wird ebenfalls mit &amp;lt;code&amp;gt;sh&amp;lt;/code&amp;gt; ausgeführt. Doch auch weitere, spätere, modernere Unix-Shells verwenden neben dem [[Ausführbare Datei|ausführbaren]] Dateinamen die von der &amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039; eingeführte Syntax; unter anderem die Verwendung von Größer- und Kleiner-Zeichen für Umleitungen von Eingaben und Ausgaben wurden zuerst in der &amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039; verwendet.&lt;br /&gt;
&lt;br /&gt;
== Merkmale ==&lt;br /&gt;
Die &amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039; verfügt über die Kerneigenschaften einer Unix-Shell:&lt;br /&gt;
* Befehls- bzw. Filterketten ([[Pipe (Informatik)|Pipes]], „Rohrleitungen“)&lt;br /&gt;
* Umleitung von Programmeingaben und -ausgaben&lt;br /&gt;
* Zusammenfassungen von Befehlen bzw. Befehlsketten in Befehls-Dateien (Shell-[[Skriptsprache|Skripten]])&lt;br /&gt;
&lt;br /&gt;
Im Unterschied zu moderneren Unix-Shells, die [[Kommandozeileninterpreter|Befehlsinterpreter]] und [[Programmiersprache]]n sind, verfügt die &amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039; über keine eigenen Programmierkonstrukte. Die Anweisungen &amp;lt;code&amp;gt;if&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;goto&amp;lt;/code&amp;gt; sind als separate Befehle implementiert, mit denen zwar bestimmte Programmieraufgaben (bedingte Steuerungen des Programmablaufs) gelöst werden können, aber es fehlt die Möglichkeit [[Variable (Programmierung)|Variablen]] zu vereinbaren. Dem Befehlsinterpreter können jedoch mehrere Argumente übergeben werden, womit sich indirekt die Funktion von Variablen durch Aufrufe neuer Shell-Instanzen simulieren lässt.&lt;br /&gt;
&lt;br /&gt;
== {{Anker|osh|etsh}}Reimplementierung ==&lt;br /&gt;
Als &amp;lt;samp&amp;gt;osh&amp;lt;/samp&amp;gt; wurde die &amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039; für moderne Unix-artige Betriebssysteme reimplementiert. Die Bezeichnung kommt von {{enS|old shell}}, „alte Shell“. Deren Nachfolger ist mit &amp;lt;samp&amp;gt;etsh&amp;lt;/samp&amp;gt; die &amp;#039;&amp;#039;{{lang|en|enhanced Thompson shell}}&amp;#039;&amp;#039;. In beiden lassen sich im Unterschied zur originalen &amp;#039;&amp;#039;Thompson-Shell&amp;#039;&amp;#039; aus den frühen 1970er Jahren [[Umgebungsvariable]]n direkt setzen; auch lesen die Reimplementierungen bei der Nutzung als primäre Shell eine vom Anwender verwaltete Profildatei, z.&amp;amp;nbsp;B. zum Setzen von Pfadinformationen.&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Ken Thompson: &amp;#039;&amp;#039;The UNIX Command Language.&amp;#039;&amp;#039; In: Structured Programming – International Computer State of the Art Report, Infotech Information Ltd. Maidenhead, Berkshire, 1975, S. 375–384.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [[Manpage]] von sh (Version 3, 1973): https://www.in-ulm.de/~mascheck/bourne/v3/&lt;br /&gt;
* [https://etsh.nl Website der Reimplementierung] – &amp;lt;code&amp;gt;etsh&amp;lt;/code&amp;gt; „{{lang|en|enhanced Thompson shell}}“ (vormals &amp;lt;code&amp;gt;osh&amp;lt;/code&amp;gt; „{{lang|en|old shell}}“) bzw. &amp;lt;code&amp;gt;tsh&amp;lt;/code&amp;gt; ohne Modernisierungen&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Shell]]&lt;br /&gt;
[[Kategorie:Unix-Software]]&lt;br /&gt;
[[Kategorie:Historische Software]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Invisigoth67</name></author>
	</entry>
</feed>