<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://demowiki.knowlus.com/index.php?action=history&amp;feed=atom&amp;title=Unix-Kommando</id>
	<title>Unix-Kommando - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://demowiki.knowlus.com/index.php?action=history&amp;feed=atom&amp;title=Unix-Kommando"/>
	<link rel="alternate" type="text/html" href="https://demowiki.knowlus.com/index.php?title=Unix-Kommando&amp;action=history"/>
	<updated>2026-05-15T20:56:08Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Demo Wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://demowiki.knowlus.com/index.php?title=Unix-Kommando&amp;diff=8916&amp;oldid=prev</id>
		<title>imported&gt;Y2kbug: /* Textmanipulation */ echo: siehe Echo (Informatik)</title>
		<link rel="alternate" type="text/html" href="https://demowiki.knowlus.com/index.php?title=Unix-Kommando&amp;diff=8916&amp;oldid=prev"/>
		<updated>2025-07-04T08:51:12Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Textmanipulation: &lt;/span&gt; echo: siehe &lt;a href=&quot;/index.php?title=Echo_(Informatik)&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Echo (Informatik) (Seite nicht vorhanden)&quot;&gt;Echo (Informatik)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Unter einem &amp;#039;&amp;#039;&amp;#039;Unix-Kommando&amp;#039;&amp;#039;&amp;#039; versteht man eines aus einer Vielzahl von [[Kommando (Computer)|Kommandos]] auf [[Unix]][[Unixoides System|-Systemen]], mithilfe derer sich das [[Betriebssystem]] über eine [[Unix-Shell|Shell]] (Benutzerschnittstelle) bedienen lässt. Die [[Syntax]] von Unix-Kommandos weicht unter den verschiedenen Systemen voneinander ab. Es existieren die beiden Hauptströmungen [[Berkeley Software Distribution|BSD]] und [[System&amp;amp;nbsp;V]]. Viele Kommandos gibt es in mehreren Varianten, auch die [[GNU Core Utilities|GNU-Tools]] als [[freie Software]] sind weit verbreitet. Die meisten Kommandos verfügen über ein- oder mehrbuchstabige Optionsschalter, die die Funktionalität verändern oder erweitern. Viele grundlegende Kommandos sind durch Standards wie [[Portable Operating System Interface|POSIX]] vereinheitlicht, und daher auf fast allen Unix-Varianten zu finden.&lt;br /&gt;
&lt;br /&gt;
== Die Baukasten-Philosophie ==&lt;br /&gt;
Die grundlegende Philosophie der Unix-Kommandos ist das Baukasten-Prinzip: Statt großer, „alles könnender“ Programme für ganze Aufgabengebiete werden kleine, spezialisierte Kommandos für elementare Aufgaben bereitgestellt, die miteinander verknüpft werden können, um komplexere Aktionen durchzuführen.&lt;br /&gt;
&lt;br /&gt;
Im Folgenden wird in Klammern angegeben, bei welcher Unix-Variante das Kommando erstmals auftaucht beziehungsweise von der seine Verbreitung ausgeht und ob es in POSIX standardisiert ist:&lt;br /&gt;
; (®V7&amp;lt;!--alias UNIX Time-Sharing System --&amp;gt;): Das Kommando war erstmals im sogenannten Research Unix Version&amp;amp;nbsp;7 von 1979 enthalten.&lt;br /&gt;
; ([[System V|SysV]]): Das Kommando war erstmals in AT&amp;amp;T&amp;amp;nbsp;UNIX System&amp;amp;nbsp;V von 1983 enthalten.&lt;br /&gt;
; ([[Berkeley Software Distribution|BSD]]): Das Kommando war erstmals in der Berkeley Software Distribution enthalten, die ab 1977 entstand.&lt;br /&gt;
; ([[GNU]]): Das Kommando gehört zu den [[GNU Core Utilities]] und war erstmals im GNU-Betriebssystem enthalten.&lt;br /&gt;
; ([[Unix-Shell#Die Bourne-Shell|SH]]): Dies ist (ursprünglich) ein internes Kommando der [[Bourne-Shell]].&lt;br /&gt;
; ([[Unix-Shell#Die C-Shell|CSH]]): Dies ist (ursprünglich) ein internes Kommando der C-Shell.&lt;br /&gt;
; ([[Portable Operating System Interface|POSIX]]): Das Kommando ist in POSIX standardisiert.&lt;br /&gt;
; (u): Das Kommando entstand unabhängig von der Entwicklung einer Shell oder eines Betriebssystems.&lt;br /&gt;
&lt;br /&gt;
=== Unix-Shells ===&lt;br /&gt;
{{Hauptartikel|Unix-Shell|Kommandozeile}}&lt;br /&gt;
&lt;br /&gt;
Unix-Systeme werden traditionellerweise über die Kommandozeile in einem [[Terminal (Computer)|Terminal]] oder [[Terminalemulation|dessen Emulation]] bedient. Zwar gibt es auch [[Desktop-Umgebung]]en für Unix und unixartige Systeme, jedoch wird von vielen Nutzern weiterhin die Kommandozeile bevorzugt. Dies liegt mitunter daran, dass die Shells (Kommandozeileninterpreter) unter Unix wesentlich leistungsfähiger sind als zum Beispiel der [[COMMAND.COM|DOS-Kommandozeileninterpreter]]. Außerdem ist eine Shell bei manchen Aufgaben einem grafischen Benutzerinterface überlegen, da durch die Shell-Syntax zum Beispiel Ablaufsteuerung und Programmrückmeldungen einbezogen werden können, was bei grafischen Anwendungen meist nicht möglich ist.&lt;br /&gt;
&lt;br /&gt;
Neben der interaktiven Nutzung haben die Shells auch die Aufgabe, so genannte [[Shellskript]]e auszuführen. Diese sind grob vergleichbar mit DOS-Stapelverarbeitungsdateien, sind jedoch aufgrund der wesentlich besseren Ausstattung der Unix-Shells mit Kontrollstrukturen deutlich leistungsfähiger. Insbesondere erlauben es die Shells, mit einfacher Syntax die Kommando-„Bausteine“ zu verknüpfen, was bei DOS erst ab MS-DOS 2 möglich ist (neuere DOSe (z.&amp;amp;nbsp;B. [[FreeDOS]], [[Disk Control Program|DCP]]) in der Regel von Anfang an).&lt;br /&gt;
&lt;br /&gt;
Im Gegensatz zu DOS-Befehlen, die oft einfach englische Worte sind (z.&amp;amp;nbsp;B. TYPE, FORMAT) haben UNIX-Befehle oft stark abgekürzte Namen (&amp;#039;&amp;#039;[[Ed (Texteditor)|ed]]&amp;#039;&amp;#039;, &amp;#039;&amp;#039;[[who (Unix)#Alternativen|w]]&amp;#039;&amp;#039;) oder sogar Fantasienamen, die nichts mit ihrer Wirkung zu tun haben (z.&amp;amp;nbsp;B. &amp;#039;&amp;#039;[[awk]]&amp;#039;&amp;#039;, &amp;#039;&amp;#039;[[Less (Unix)|less]]&amp;#039;&amp;#039;) und erfordern oft eine schwierige Einarbeitung.&lt;br /&gt;
&lt;br /&gt;
Die Shells enthalten einige eingebaute Kommandos, hier einige Beispiele:&lt;br /&gt;
; set ([[Unix-Shell#Die Bourne-Shell|SH]], [[Portable Operating System Interface|POSIX]]): Einstellen von Shelloptionen und Setzen von Shellargumenten&lt;br /&gt;
; read (SH, POSIX): Lesen einer Zeile von der Eingabe und Speicherung in einer Variablen&lt;br /&gt;
&lt;br /&gt;
POSIX standardisiert hierfür keine Pfade, POSIX standardisiert hier lediglich, dass ein POSIX-kompatibles Programm namens sh existieren muss und dass es zwingend nach Eingabe von PATH=`getconf PATH` aufgefunden werden muss.&lt;br /&gt;
&lt;br /&gt;
==== Die wichtigsten Shells ====&lt;br /&gt;
; [[Bourne-Shell|sh]], &amp;#039;&amp;#039;Bourne-Shell&amp;#039;&amp;#039; (®V7): war nicht die erste, gilt aber als &amp;#039;&amp;#039;die&amp;#039;&amp;#039; Unix-Shell&lt;br /&gt;
; [[C-Shell|csh]], &amp;#039;&amp;#039;C-Shell&amp;#039;&amp;#039; ([[Berkeley Software Distribution|BSD]]): mit einer der Programmiersprache C ähnlichen Syntax&lt;br /&gt;
; [[Kornshell|ksh]], &amp;#039;&amp;#039;KornShell&amp;#039;&amp;#039; ([[System V|SysV]]): Version &amp;#039;&amp;#039;ksh93&amp;#039;&amp;#039; bildete den Ausgangspunkt für die in POSIX standardisierte Shell&lt;br /&gt;
; [[Bash (Shell)|bash]], &amp;#039;&amp;#039;Bash (Bourne-again shell)&amp;#039;&amp;#039; ([[GNU]]): Weiterentwicklung der Bourne-Shell und derzeit meistbenutzte Unix-Shell; Shell-Voreinstellung bei den meisten GNU/[[Linux-Distribution]]en, [[macOS]]&amp;amp;nbsp;10.3+, [[Solaris (Betriebssystem)|Solaris]]&amp;amp;nbsp;11+, [[Windows Subsystem for Linux]] und [[Cygwin]];&lt;br /&gt;
; [[tcsh]], &amp;#039;&amp;#039;TENEX-C-Shell&amp;#039;&amp;#039; (u): Weiterentwicklung der C-Shell&lt;br /&gt;
; [[Z shell|zsh]], &amp;#039;&amp;#039;Z-Shell&amp;#039;&amp;#039; (u): beliebte, ksh-ähnliche Shell mit sehr vielen Merkmalen&lt;br /&gt;
&amp;#039;&amp;#039;(Weitere Shells siehe unter [[Unix-Shell]]s)&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== Filter ===&lt;br /&gt;
{{Hauptartikel|Filter (Software)}}&lt;br /&gt;
&lt;br /&gt;
UNIX ist reichhaltig mit verschiedensten Filterprogrammen zur Bearbeitung von Datenströmen ausgestattet. Dies insbesondere, weil das in UNIX eingeführte Konzept der [[Pipe (Informatik)|Pipeline]] sich geradezu dafür anbietet, ganze Verarbeitungsketten aus solchen Filtern aufzubauen. [[sed (Unix)|sed]], [[awk]], [[sort (Unix)|sort]], [[more (Kommandozeilenbefehl)|more]] und viele andere mehr zählen zu dieser Gruppe von Programmen.&lt;br /&gt;
&lt;br /&gt;
=== Standard-Ein-/Ausgabe ===&lt;br /&gt;
Unix-Programme kennen drei Standardkommunikationswege:&lt;br /&gt;
&lt;br /&gt;
* Standardeingabe ([[stdin]]), Voreinstellung: [[Tastatur]] ([[Terminal (Computer)|Terminal]])&lt;br /&gt;
* Standardausgabe ([[stdout]]), Voreinstellung: [[Bildschirm]] (Terminal)&lt;br /&gt;
* Standardfehlerausgabe ([[stderr]]), Voreinstellung: Bildschirm (Terminal)&lt;br /&gt;
&lt;br /&gt;
Auf der Standardfehlerausgabe werden per Konvention Diagnose- und Fehlermeldungen oder Warnungen ausgegeben.&lt;br /&gt;
&lt;br /&gt;
=== {{Anker|Ein-/Ausgabeumlenkung|I/O redirection|Redirection|Umlenkung}}Ein-/Ausgabeumlenkung (englisch &amp;#039;&amp;#039;I/O redirection&amp;#039;&amp;#039;) ===&lt;br /&gt;
Man kann die Standardkommunikationswege „umbiegen“. In der Regel tut man das, um aus einer Datei zu lesen oder in eine Datei zu schreiben.&lt;br /&gt;
&lt;br /&gt;
* Eingabeumlenkung mit &amp;lt;code&amp;gt;&amp;lt;&amp;lt;/code&amp;gt;:&lt;br /&gt;
        wc -l &amp;lt; test.dat&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;&amp;lt;/code&amp;gt; liest aus der Datei test.dat und schreibt das Ergebnis in die Konsole. Mit &amp;lt;code&amp;gt;wc -l&amp;lt;/code&amp;gt; (&amp;#039;&amp;#039;Word Counter&amp;#039;&amp;#039; mit dem Argument &amp;#039;&amp;#039;Lines&amp;#039;&amp;#039;) werden die Zeilen in der Konsole gezählt und ausgegeben.&lt;br /&gt;
* Ausgabeumlenkung mit &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt;:&lt;br /&gt;
        ls &amp;gt; dir.dat&lt;br /&gt;
: Die Ausgabe von ls erfolgt in die Datei dir.dat. Ist diese bereits vorhanden, dann wird sie überschrieben.&lt;br /&gt;
* Ausgabeumlenkung mit &amp;lt;code&amp;gt;&amp;gt;&amp;gt;&amp;lt;/code&amp;gt;:&lt;br /&gt;
        ls &amp;gt;&amp;gt; dir.dat&lt;br /&gt;
: Die Ausgabe von ls wird an das Ende der Datei dir.dat angehängt.&lt;br /&gt;
* Umlenkung von Standarderror mit &amp;lt;code&amp;gt;2&amp;gt;&amp;lt;/code&amp;gt;:&lt;br /&gt;
        wc -l &amp;lt; test.dat 2&amp;gt; err.log&lt;br /&gt;
: Fehlermeldungen werden in die Datei err.log geschrieben (nicht in der C-Shell &amp;#039;&amp;#039;csh&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
Das Prinzip der Ein-/Ausgabeumlenkung findet man auch im Betriebssystem MS-DOS.&lt;br /&gt;
&lt;br /&gt;
=== Pipes ===&lt;br /&gt;
Ein mächtiges Hilfsmittel ist die Verwendung einer &amp;#039;&amp;#039;[[Pipeline (Unix)|Pipe]]&amp;#039;&amp;#039; zur Ein- und Ausgabeumlenkung&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;Kommando1&amp;gt; | &amp;lt;Kommando2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Man kann mehrere Filter miteinander verknüpfen (hintereinander hängen). In der Regel erwartet ein Filter die Eingabe von der Standardeingabe (Tastatur). Die Ausgabe erfolgt auf der Standardausgabe (Bildschirm). Beim Piping wird die Ausgabe eines Kommandos über eine im Betriebssystem-Kern implementierte Pipe in die Standardeingabe des folgenden Kommandos umgeleitet.&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
&lt;br /&gt;
  grep Fidibus testdatei | tr &amp;#039;[:lower:]&amp;#039; &amp;#039;[:upper:]&amp;#039; | sort&lt;br /&gt;
&lt;br /&gt;
In der Datei &amp;lt;code&amp;gt;testdatei&amp;lt;/code&amp;gt; werden mittels [[grep]] alle Zeilen gesucht und ausgegeben, die das Wort „Fidibus“ enthalten, danach wandelt tr alle Kleinbuchstaben in Großbuchstaben um, und zum Schluss wird alles sortiert und auf dem Bildschirm ausgegeben. Diese Art der Pipes nennt man anonyme Pipes.&lt;br /&gt;
&lt;br /&gt;
Diese Form der Ein- und Ausgabeumlenkung ist so alltäglich, dass es eine Vielzahl an Kommandos gibt, die erst durch diese Technik überhaupt sinnvoll sind – beispielsweise das oben genannte wc (word count), das ohne die Eingabeumleitung (weg von der Tastatur, hin auf eine Datei) kaum ein Einsatzgebiet hätte.&lt;br /&gt;
&lt;br /&gt;
Zur dahinterliegenden Technik ist zu bemerken, dass die einzelnen Filter als jeweils eigene [[Prozess (Informatik)|Prozesse]] gestartet werden und so quasi gleichzeitig ihre Arbeit verrichten, während die Pipes dafür sorgen, dass die Filter bei Bedarf so aufeinander warten, dass keine größeren Mengen an Zwischenergebnissen anfallen, die entsprechende Mengen an Speicherplatz in Anspruch nehmen würden.&lt;br /&gt;
&lt;br /&gt;
Für komplexere Anwendungen lassen sich auch benannte Pipes ([[First In – First Out|FIFOs]]) definieren, auf die dann wie auf eine Datei zugegriffen werden kann:&lt;br /&gt;
* mkfifo: benannte Pipe anlegen&lt;br /&gt;
: Beispiel:&lt;br /&gt;
:* In einer Shell:&lt;br /&gt;
            mkfifo Rohr&lt;br /&gt;
            ls &amp;gt; Rohr&lt;br /&gt;
:: Hier wird erst eine benannte Pipe namens &amp;lt;code&amp;gt;Rohr&amp;lt;/code&amp;gt; angelegt, und dann die aktuelle Verzeichnisliste in diese umgeleitet. Achtung: Das Öffnen der benannten Pipe zum Schreiben bewirkt unter Umständen, dass das Programm blockiert, weil es darauf wartet, dass ein anderes Program die Pipe zum Lesen öffnet und die darin wartenden Daten in Empfang nimmt. Analoges passiert, wenn eine Pipe zum Lesen geöffnet wird, ehe ein anderes Programm dorthinein schreibt.&lt;br /&gt;
:* Danach in einer anderen Shell (z.&amp;amp;nbsp;B. in einem anderen Fenster):&lt;br /&gt;
            cat Rohr&lt;br /&gt;
:: Hier wird der „Inhalt“ von &amp;lt;code&amp;gt;Rohr&amp;lt;/code&amp;gt; ausgelesen und auf der Standardausgabe ausgegeben. Es erscheint also die Ausgabe von ls aus der &amp;#039;&amp;#039;ersten&amp;#039;&amp;#039; Shell in der Standardausgabe der &amp;#039;&amp;#039;zweiten&amp;#039;&amp;#039; Shell.&lt;br /&gt;
:* Danach kann die Pipe wie eine normale Datei gelöscht werden:&lt;br /&gt;
            rm Rohr&lt;br /&gt;
&lt;br /&gt;
Ein Einsatzgebiet ist etwa, wenn ein Filter Daten von verschiedenen Quellen mischen will – beispielsweise [[#paste|paste]], das zwei Dateien nimmt und zeilenweise nebeneinander ausgibt.&lt;br /&gt;
&lt;br /&gt;
== Kommandos (Auswahl) ==&lt;br /&gt;
siehe auch: [[GNU Core Utilities]] (Sammlung von grundlegenden Befehlszeilen-Programmen unter freier Lizenz)&lt;br /&gt;
&lt;br /&gt;
=== Hilfe ===&lt;br /&gt;
Das Unix-Hilfesystem basiert wesentlich auf den so genannten Manpages (für &amp;#039;&amp;#039;manual page&amp;#039;&amp;#039;, Handbuchseite). Idealerweise liegt für jedes Kommando, jeden Aufruf der Programmierschnittstelle (Systemfunktionen, C-Bibliothek) und jede wichtige Konfigurationsdatei eine eigene &amp;#039;&amp;#039;man page&amp;#039;&amp;#039; vor.&lt;br /&gt;
&lt;br /&gt;
Die Handbuchseiten sind zudem in durchnummerierte Bereiche unterteilt, die unterschiedliche Schnittstellen abdecken (Benutzerkommandos, Administrations-Kommandos, C-Funktionen etc.).&lt;br /&gt;
&lt;br /&gt;
Hilfeseiten sind im Format des Textsatzprogramms [[troff]] geschrieben, daher kann neben der [[American Standard Code for Information Interchange|ASCII]]-Textversion für die Online-Anzeige auch eine druckbare Version generiert werden.&lt;br /&gt;
&lt;br /&gt;
==== Die Kommandos des Online-Handbuchs ====&lt;br /&gt;
* [[Manpage|man]] (®V7, [[Portable Operating System Interface|POSIX]]): Handbuchseiten (&amp;#039;&amp;#039;MANual page&amp;#039;&amp;#039;)&amp;lt;br /&amp;gt;ruft die Hilfeseite für ein bestimmtes Programm, eine bestimmte Funktion etc. auf.&lt;br /&gt;
* whatis: gibt eine einzeilige Kurzbeschreibung der Kommandos, in der Regel die Zusammenfassungszeile der zugehörigen Hilfeseite.&lt;br /&gt;
* [[apropos (Unix)|apropos]]  oder man -k sucht in den Kurzbeschreibungen nach einer Zeichenfolge und gibt die passenden Einträge samt Kurzbeschreibung zurück. Beispielsweise gibt&amp;amp;nbsp;&amp;lt;code&amp;gt;apropos&amp;amp;nbsp;compiler&amp;lt;/code&amp;gt; alle Einträge aus, in denen das Wort „compiler“ vorkommt.&lt;br /&gt;
&lt;br /&gt;
Von GNU kommt ein alternatives Hilfssystem namens texinfo, das auf [[Hypertext]] beruht. Dieses ist in den Editor Emacs integriert, es gibt aber auch einen reinen info-Browser:&lt;br /&gt;
* [[info (Unix)|info]] ([[GNU]]): Handbuch zu einem Kommando&lt;br /&gt;
Die Tendenz geht anscheinend dahin, dass die GNU-Programmierer die manual pages etwas stiefmütterlich behandeln und das vollständigere und auch meistens korrektere Handbuch in Texinfo-Form liefern.&lt;br /&gt;
&lt;br /&gt;
Zunehmend werden für [[Grafische Benutzeroberfläche|GUI]]-Programme auch [[Hypertext Markup Language|HTML]]-Seiten als Hilfedateien verwendet.&lt;br /&gt;
&lt;br /&gt;
Folgendes ist eine unvollständige Zusammenstellung wichtiger Unix-Kommandos.&lt;br /&gt;
&lt;br /&gt;
=== Dateioperationen ===&lt;br /&gt;
Der Umgang mit Dateien ist ein wesentlicher Teil der Arbeit am Computer. Dementsprechend gibt es auch Unix-Kommandos zum Umgang mit Dateien:&lt;br /&gt;
* [[Cp (Unix)|cp]] (®V7, [[Portable Operating System Interface|POSIX]]): Datei kopieren (&amp;#039;&amp;#039;CoPy&amp;#039;&amp;#039;)&lt;br /&gt;
* [[Ls (Unix)|ls]] (®V7, POSIX): Dateien in einem Verzeichnis anzeigen (&amp;#039;&amp;#039;LiSt&amp;#039;&amp;#039;)&lt;br /&gt;
* [[Mv (Unix)|mv]] (®V7, POSIX): eine Datei verschieben oder umbenennen (&amp;#039;&amp;#039;MoVe&amp;#039;&amp;#039;)&lt;br /&gt;
* [[Ln (Unix)|ln]] (®V7, POSIX): Erzeugen von Dateiverknüpfungen (&amp;#039;&amp;#039;LiNk&amp;#039;&amp;#039;)&lt;br /&gt;
* [[Rm (Unix)|rm]] (®V7, POSIX): Löschen einer Datei (&amp;#039;&amp;#039;ReMove&amp;#039;&amp;#039;)&lt;br /&gt;
* [[Tar (EDV)|tar]] (®V7): Archivierungsprogramm (&amp;#039;&amp;#039;Tape ARchive&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
=== Verzeichnisse ===&lt;br /&gt;
Dateien sind unter Unix (wie eigentlich auf allen modernen Betriebssystemen) in Verzeichnissen geordnet. Unter Unix gibt es jedoch, anders als etwa unter MS-DOS oder Windows, nur einen einzigen Verzeichnisbaum, in den der Inhalt anderer Datenträger bei Bedarf an einer bestimmten Stelle im Baum „eingehängt“ wird.&lt;br /&gt;
&lt;br /&gt;
Zur Verzeichnisverwaltung stehen unter anderem folgende Befehle zur Verfügung:&lt;br /&gt;
* {{Anker|mkdir}}[[mkdir]] (®V7, [[Portable Operating System Interface|POSIX]]): erzeugt ein neues Verzeichnis (&amp;#039;&amp;#039;{{lang|en|MaKe DIRectory}}&amp;#039;&amp;#039;)&lt;br /&gt;
* {{Anker|rmdir}}[[rmdir]] (®V7, POSIX): löscht ein (leeres) Verzeichnis (&amp;#039;&amp;#039;{{lang|en|ReMove DIRectory}}&amp;#039;&amp;#039;)&lt;br /&gt;
* {{Anker|cd}}[[cd (Kommandozeilenbefehl)|cd]] ([[Unix-Shell#Die Bourne-Shell|SH]], POSIX): wechselt in ein anderes Verzeichnis (&amp;#039;&amp;#039;{{lang|en|Change Directory}}&amp;#039;&amp;#039;)&lt;br /&gt;
* [[Pwd (Unix)|pwd]] (®V7, POSIX): Anzeige des aktuellen Verzeichnispfades ([[Arbeitsverzeichnis]], &amp;#039;&amp;#039;{{lang|en|Print Working Directory}}&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
=== Dateisystem ===&lt;br /&gt;
* {{Anker|mkfs}}mkfs (®V7): Dateisystem erstellen (&amp;#039;&amp;#039;MaKe FileSystem&amp;#039;&amp;#039;)&lt;br /&gt;
* {{Anker|newfs}}newfs ([[Berkeley Software Distribution|BSD]], [[System V]]): Dateisystem komfortabler erstellen&lt;br /&gt;
* {{Anker|fsck}}[[fsck]] (®V7): Dateisystem überprüfen (&amp;#039;&amp;#039;FileSystem ChecK&amp;#039;&amp;#039;)&lt;br /&gt;
* [[mount (Unix)|mount]] (®V7) und umount (®V7): Dateisystem einhängen in den oder aushängen aus dem Verzeichnisbaum&lt;br /&gt;
* [[dd (Unix)|dd]]: Kopieren, Beschneiden und Umleiten von Datenströmen (&amp;#039;&amp;#039;{{lang|en|Disk Dump}}&amp;#039;&amp;#039;, englisch für „Scheibe“ oder „Platte“ und „abladen“ oder „wegwerfen“)&lt;br /&gt;
* [[df (Unix)|df]] (®V7, [[Portable Operating System Interface|POSIX]]): Anzeige des freien Speicherplatzes in Filesystemen (&amp;#039;&amp;#039;Disk Free&amp;#039;&amp;#039;)&lt;br /&gt;
* [[du (Unix)|du]] (®V7, POSIX): Anzeige des benötigten Speicherplatzes von Dateien und Verzeichnissen (&amp;#039;&amp;#039;Disk Usage&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
=== Benutzer- und Rechteverwaltung ===&lt;br /&gt;
Unix war von Anfang an ein Mehrbenutzerbetriebssystem (beispielsweise kann MS-Windows dies erst seit der NT-Generation). Das bedeutet, dass verschiedene Benutzer am Rechner arbeiten können und voreinander abgeschottet werden: Man kann anderen Benutzern erlauben oder verbieten, auf bestimmte Dateien zuzugreifen. Zusätzlich kann man Benutzer auch Gruppen zuordnen, denen kollektiv bestimmte Zugriffsrechte gewährt werden können. Eine besondere Rolle spielt der Benutzer root (Systemadministrator), der als einziger Benutzer vollen Zugriff auf das System hat.&lt;br /&gt;
&lt;br /&gt;
Jeder Benutzer hat typischerweise sein eigenes Heimatverzeichnis, in welchem nur er (und root) Dateien anlegen und löschen kann.&lt;br /&gt;
&lt;br /&gt;
Kommandos (Auswahl):&lt;br /&gt;
* [[Su (Unix)|su]] (®V7), [[sudo]]: Benutzer wechseln, standardmäßig wird zu root gewechselt (&amp;#039;&amp;#039;Substitute User&amp;#039;&amp;#039;)&lt;br /&gt;
* {{Anker|useradd|adduser}}useradd oder adduser ([[System V|SysV]]): Einen neuen Benutzer anlegen.&lt;br /&gt;
* {{Anker|w}}w [[Berkeley Software Distribution|(BSD)]]: Wer ist alles angemeldet? Und was tun sie?&lt;br /&gt;
* [[chsh]] (BSD): Änderung von Nutzerinformationen in &amp;lt;code&amp;gt;/etc/passwd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/etc/group&amp;lt;/code&amp;gt; etc.&lt;br /&gt;
* [[Who (Unix)|who]] (®V7, [[Portable Operating System Interface|POSIX]]): Wer ist alles angemeldet?&lt;br /&gt;
* [[chmod]] (®V7, POSIX): Zugriffsrechte auf Dateien ändern (&amp;#039;&amp;#039;CHange MODe&amp;#039;&amp;#039;)&lt;br /&gt;
* [[Chown (Unix)|chown]] (®V7, POSIX): Eigentümer und/oder Gruppe ändern (&amp;#039;&amp;#039;CHange OWNer&amp;#039;&amp;#039;)&lt;br /&gt;
* {{Anker|chgrp}}&amp;#039;&amp;#039;&amp;#039;chgrp&amp;#039;&amp;#039;&amp;#039; (®V7, POSIX): Gruppenzugehörigkeit einer Datei ändern (&amp;#039;&amp;#039;CHange GRouP&amp;#039;&amp;#039;)&lt;br /&gt;
* {{Anker|passwd}}&amp;#039;&amp;#039;&amp;#039;passwd&amp;#039;&amp;#039;&amp;#039; (®V7): Benutzerpasswort ändern (siehe auch [[chsh]])&lt;br /&gt;
* {{Anker|id}}id (BSD, POSIX): Gibt Informationen zur eigenen Identität aus: Benutzername, [[Benutzerkennung]] (UID), Name der primären Benutzergruppe, Nummer der primären Benutzergruppe (GID)&lt;br /&gt;
* {{Anker|finger}}finger (BSD): Gibt Informationen über den (angemeldeten) Benutzer heraus. (Auf vielen Systemen wegen Sicherheitsbedenken deaktiviert)&lt;br /&gt;
&lt;br /&gt;
=== Textmanipulation ===&lt;br /&gt;
Eine der Stärken von Unix sind seine vielen Zubehörprogramme, insbesondere (aber nicht nur) zur Bearbeitung von Textdateien. Die Stärke beruht unter anderem darauf, dass die Zubehörprogramme leicht über &amp;#039;&amp;#039;pipes&amp;#039;&amp;#039; „zusammengeschaltet“ werden können, um komplexere Aufgaben zu erfüllen.&lt;br /&gt;
&lt;br /&gt;
* {{Anker|cat}}[[cat (Unix)|cat]] (®V7, [[Portable Operating System Interface|POSIX]]): Ausgabe und/oder Verkettung von Textdateien in der Kommandozeile (&amp;#039;&amp;#039;conCATenate&amp;#039;&amp;#039;, [[Englische Sprache|Englisch]] für „verknüpfen“&amp;lt;ref name=&amp;quot;leo&amp;quot;&amp;gt;{{Internetquelle |url=https://dict.leo.org/german-english/concatenate |titel=concatenate - Translation in LEO’s ­English ⇔ German Dictionary |abruf=2023-04-27}}&amp;lt;/ref&amp;gt;)&lt;br /&gt;
* [[Cut (Unix)|cut]] ([[System V]], POSIX): Auswählen bestimmter Spalten bei der Ausgabe.&lt;br /&gt;
* {{Anker|echo}}echo (®V7, POSIX): Ausgabe, siehe [[Echo (Informatik)]]&lt;br /&gt;
* [[grep]] (®V7, POSIX): Anzeige aller Zeilen einer Textdatei, die auf einen [[Regulärer Ausdruck|regulären Ausdruck]] passen.&lt;br /&gt;
* [[Head (Unix)|head]] (POSIX): Ausgabe der ersten &amp;#039;&amp;#039;n&amp;#039;&amp;#039; Zeichen/Zeilen des Inputs (dies ist üblicherweise eine [[Datei]]).&lt;br /&gt;
* [[Tail (Unix)|tail]] ([[Berkeley Software Distribution|BSD]], POSIX): Ausgabe der letzten Zeilen des Inputs (dies ist üblicherweise eine Datei).&lt;br /&gt;
* [[Less (Unix)|less]] ([[GNU]]) und [[More (Kommandozeilenbefehl)|more]] (POSIX): seitenweise Ausgabe einer Textdatei&lt;br /&gt;
* {{Anker|paste}}paste ([[System V]], POSIX): Liest den Inhalt mehrerer Dateien zeilenweise und verbindet diese durch Verwendung des [[Trennzeichen]]s (Delimiter) miteinander&lt;br /&gt;
* [[Sort (Unix)|sort]] (®V7, POSIX): nach bestimmten Kriterien sortieren.&lt;br /&gt;
* {{Anker|strings}}strings (BSD, POSIX): filtert druckbare Zeichenketten aus einer Binärdatei.&lt;br /&gt;
* [[Sed (Unix)|sed]] (®V7, POSIX): mächtiges Werkzeug zur Textmanipulation (&amp;#039;&amp;#039;Stream EDitor&amp;#039;&amp;#039;)&lt;br /&gt;
* [[awk]] (®V7, POSIX): programmierbares Werkzeug zur Datenverarbeitung (&amp;#039;&amp;#039;Aho Weinberger Kernighan&amp;#039;&amp;#039;, die Anfangsbuchstaben der Namen der Erfinder)&lt;br /&gt;
&lt;br /&gt;
=== Texteditor ===&lt;br /&gt;
* [[Ed (Texteditor)|ed]] (®V7, [[Portable Operating System Interface|POSIX]]): der „originale“ Unix-Texteditor&lt;br /&gt;
* [[Ex (Texteditor)|ex]] ([[Berkeley Software Distribution|BSD]], POSIX): der Vorläufer des vi&lt;br /&gt;
* [[vi]] (BSD, POSIX): &amp;#039;&amp;#039;VIsual editor&amp;#039;&amp;#039;&lt;br /&gt;
* [[vim]] (u): freie Weiterentwicklung von vi&lt;br /&gt;
&lt;br /&gt;
=== Netz ===&lt;br /&gt;
* {{Anker|ftp}}ftp [[Berkeley Software Distribution|(BSD)]]: Kommandozeilen-Client für [[File Transfer Protocol]] (FTP)&lt;br /&gt;
* {{Anker|mail}}[[Mail (Unix)|mail]] (®V7): [[E-Mail]] verschicken. POSIX-standardisiert &amp;lt;code&amp;gt;mailx&amp;lt;/code&amp;gt;&lt;br /&gt;
* {{Anker|ping}}ping (BSD): schickt ein [[Ping (Datenübertragung)|ping]] an einen anderen Rechner.&lt;br /&gt;
* {{Anker|telnet}}telnet (BSD): Client für das [[Telnet]]-Protokoll&lt;br /&gt;
* [[Secure Shell|ssh]] (u): Shell für verschlüsselte Verbindungen und (als scp) Übertragungen, sicherer als Telnet bzw. FTP (&amp;#039;&amp;#039;Secure SHell&amp;#039;&amp;#039;)&lt;br /&gt;
* [[Remote Shell|rsh]] (BSD): (&amp;#039;&amp;#039;Remote SHell&amp;#039;&amp;#039;)&lt;br /&gt;
* [[netstat]] (BSD): Anzeige der Netzverbindungen&lt;br /&gt;
* [[ifconfig]] (BSD): Netzwerkschnittstellenkonfiguration&lt;br /&gt;
&lt;br /&gt;
=== Kommunikation ===&lt;br /&gt;
* {{Anker|talk}}talk [[Portable Operating System Interface|(POSIX)]]: mit einem anderen Benutzer unterhalten.&lt;br /&gt;
* {{Anker|write}}write (®V7, POSIX): Nachricht an einen Benutzer schicken&lt;br /&gt;
* {{Anker|wall}}wall: Nachricht an alle Benutzer eines Systems schicken (&amp;#039;&amp;#039;Write ALL&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
=== Prozessmanagement ===&lt;br /&gt;
* [[At (Unix)|at]] (®V7, [[Portable Operating System Interface|POSIX]]): Prozess später starten (zu (&amp;#039;&amp;#039;at&amp;#039;&amp;#039;) einem bestimmten Zeitpunkt)&lt;br /&gt;
* [[cron]] (®V7): Prozess regelmäßig starten (POSIX standardisiert das Konfigurationswerkzeug &amp;lt;code&amp;gt;crontab&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [[Kill (Unix)|kill]] (®V7, POSIX): Einen Prozess beenden oder andere Signale an ihn senden&lt;br /&gt;
* {{Anker|nice}}nice (®V7, POSIX) und renice ([[Berkeley Software Distribution|BSD]], POSIX): Priorität eines Prozesses ändern&lt;br /&gt;
* [[nohup]]: (®V7, POSIX) bei Logout nicht beenden&lt;br /&gt;
* [[Ps (Unix)|ps]] (®V7, POSIX): Anzeige der laufenden Prozesse&lt;br /&gt;
* [[Top (Unix)|top]] (u): interaktive Anzeige der laufenden Prozesse (&amp;#039;&amp;#039;Table Of Processes&amp;#039;&amp;#039;)&lt;br /&gt;
* [[uname]] (POSIX): Ausgabe von Informationen über [[Betriebssystem]] und Rechner&lt;br /&gt;
&lt;br /&gt;
=== C-Entwicklungssystem ===&lt;br /&gt;
* {{Anker|cc}}cc (®V7): C-Compiler (POSIX spezifiziert &amp;lt;code&amp;gt;c99&amp;lt;/code&amp;gt; als C-99-kompatiblen Compiler)&lt;br /&gt;
* [[GNU Compiler Collection|gcc]] ([[GNU]]): Die GNU-Variante des C-Compilers&lt;br /&gt;
* [[make]] (®V7, [[Portable Operating System Interface|POSIX]]): Programmgruppenverwaltung&lt;br /&gt;
* {{Anker|lint}}lint (®V7): C-Code-Überprüfung&lt;br /&gt;
* {{Anker|as}}as (®V7): Assembler&lt;br /&gt;
* {{Anker|ld}}ld (®V7): Link Loader&lt;br /&gt;
* {{Anker|adb}}adb (®V7): Debugger&lt;br /&gt;
* {{Anker|gdb}}gdb ([[GNU]]): Der [[GNU Debugger]]&lt;br /&gt;
* {{Anker|nm}}nm (®V7): Symbol Table&lt;br /&gt;
* {{Anker|objdump}}objdump (u): Disassembler, spezialisiert auf [[Executable and Linking Format|ELF]]-Dateien&lt;br /&gt;
* {{Anker|size}}size (®V7): Programmsegmentgrößen&lt;br /&gt;
* {{Anker|prof}}prof (®V7): Profiler&lt;br /&gt;
* [[Lex (Informatik)|lex]] (®V7, POSIX): Lexical Analyser Generator&lt;br /&gt;
* [[yacc]] (®V7, POSIX): Parser Generator&lt;br /&gt;
&lt;br /&gt;
=== Textsatzsystem ===&lt;br /&gt;
Unix wurde zusammen mit dem leistungsfähigen Textsatzsystem &amp;#039;&amp;#039;troff&amp;#039;&amp;#039; entwickelt, das unter anderem Tabellen- und Formelsatz ermöglicht.&lt;br /&gt;
&lt;br /&gt;
Auch die Manualseiten können mit diesem System gesetzt werden.&lt;br /&gt;
&amp;#039;&amp;#039;nroff&amp;#039;&amp;#039; erlaubt die Ausgabe auf Textterminals und Zeilendrucker.&lt;br /&gt;
Das betriebssystemunabhängige [[TeX]] hat jedoch *roff weitgehend abgelöst. Auch das GNU-Hilfesystem &amp;#039;&amp;#039;texinfo&amp;#039;&amp;#039; arbeitet mit TeX für die Druckausgabe.&lt;br /&gt;
&lt;br /&gt;
* [[troff]] (®V7): Makroorientiertes Textsatzsystem für Fotosatzbelichter der Firma [[Wang Laboratories|Wang]], deren Steuercodes große Ähnlichkeit mit den Belichtern der [[H. Berthold AG]] haben.&lt;br /&gt;
* {{Anker|nroff}}nroff (®V7): Makroorientiertes System für Terminal und Zeilendrucker&lt;br /&gt;
* [[groff]] ([[GNU]]): GNU-Version von &amp;#039;&amp;#039;troff&amp;#039;&amp;#039; und &amp;#039;&amp;#039;nroff&amp;#039;&amp;#039; mit Erweiterungen für die Ansteuerung von grafikfähigen Druckern&lt;br /&gt;
* {{Anker|eqn}}eqn (®V7): Mathematischer Formelsatz für &amp;#039;&amp;#039;troff&amp;#039;&amp;#039; (Präprozessor)&lt;br /&gt;
* {{Anker|neqn}}neqn (®V7): Mathematischer Formelsatz für &amp;#039;&amp;#039;nroff&amp;#039;&amp;#039; (Präprozessor)&lt;br /&gt;
* {{Anker|tbl}}tbl (®V7): Tabellen für &amp;#039;&amp;#039;troff&amp;#039;&amp;#039; und &amp;#039;&amp;#039;nroff&amp;#039;&amp;#039; (Präprozessor)&lt;br /&gt;
* {{Anker|pic}}pic (u): Einbinden von Bildern in troff Satzdaten. Das Programm stammt ursprünglich aus der &amp;#039;&amp;#039;UNIX Documenters Workbench&amp;#039;&amp;#039; und war separat zu erwerben.&lt;br /&gt;
* {{Anker|spell}}spell (®V7): Rechtschreibprüfprogramm&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Brian W. Kernighan, Rob Pike: &amp;#039;&amp;#039;Der UNIX-Werkzeugkasten. Programmieren mit UNIX.&amp;#039;&amp;#039; Hanser, München 1986, ISBN 3-446-14273-8 (deutsche Übersetzung)&lt;br /&gt;
* Michael Kofler: &amp;#039;&amp;#039;Linux Kommandoreferenz. Shell-Befehle von A bis Z.&amp;#039;&amp;#039; Rheinwerk Verlag, Bonn 2016, ISBN 978-3-8362-3778-9. 3., aktualisierte und erweiterte Auflage 2016 (2. Auflage im Rheinwerk Verlag).&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.html Übersichtsseite &amp;#039;&amp;#039;Utilities&amp;#039;&amp;#039;] der [[Open Group]]&lt;br /&gt;
* [http://unxutils.sourceforge.net/ Sammlung freier Unix-Werkzeuge für Windows]&lt;br /&gt;
* [http://jamesie.de/unix/refcards/ UNIX-Referenzkarte], fasst viele wichtige Befehle kurz zusammen.&lt;br /&gt;
* [http://www.roesler-ac.de/wolfram/acro/index.htm Unix-Akronymliste], erklärt die Herkunft der Namen vieler Unix-Kommandos&lt;br /&gt;
* [http://nafoku.de/t/unix.htm Unixbefehle für Anfänger, inkl. Bildbearbeitung auf Kommandozeilenebene]&lt;br /&gt;
&lt;br /&gt;
== Quellen ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Navigationsleiste Befehle der GNU core utilities}}&lt;br /&gt;
[[Kategorie:Unix-Software| ]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Y2kbug</name></author>
	</entry>
</feed>