Befehl | Beschreibung |
basename | Dateiname ausgeben Dem Kommandozeilenbefehl basename wird ein Dateipfad übergeben; es gibt lediglich den Dateinamen ohne vorangestellten Pfad zurück. Die Syntax des Befehls lautet: basename [OPTIONEN] Pfad/zur/Datei [SUFFIX] Geben Sie beispielsweise $ basename /home/user/bild.jpg ins Terminal ein, um folgende Ausgabe zu erhalten: bild.jpg Die zusätzliche Angabe des Suffixes tilgt dieses ebenfalls aus der Ausgabe. Eingabe: $ basename /home/user/bild.jpg .jpg Ausgabe: bild Der Befehl kann durch Optionen auf mehrere Dateien ausgeweitet werden. |
cat | Dateiinhalte zusammenführen Das Kommandozeilenprogramm cat (kurz für: concatenate) wurde als Werkzeug für das Zusammenführen von Dateiinhalten entwickelt und kann als Pager zum Anzeigen von Dateiinhalten im Terminal eingesetzt werden. Rufen Sie cat mit folgender Syntax im Terminal auf, um eine Datei einzulesen und auf stdout (der Standardausgabe) auszugeben: cat OPTIONEN DATEI Mehrere Dateien werden durch Leerzeichen getrennt: cat OPTIONEN DATEI1 DATEI2 Die Verknüpfung von Dateiinhalten erfolgt mithilfe von Umleitungs-Operatoren (>, < und |). Nutzen Sie beispielsweise den Operator „größer als“ (>), um den Inhalt zweier Dateien in einer Dritten zusammenzuführen: cat datei_1.txt datei_2.txt > datei_3.txt |
cmp | Dateien auf Byte-Ebene abgleichen cmp ist Teil des diff-Pakets und dient wie dieses dem Vergleich von Dateiinhalten. Anders als bei diff erfolgt der Abgleich dabei auf Byte-Ebene und eignet sich somit speziell für Binärdateien. Nutzen Sie cmp gemäß folgender Syntax: cmp [OPTIONEN] DATEI1 DATEI2 Findet cmp Unterschiede, gibt das Kommandozeilenprogramm Byte- und Zeilennummer der ersten Abweichung im Terminal aus. |
comm | Zeilenweise sortierte Dateien vergleichen Nutzen Sie das Kommandozeilenprogramm comm, um sortierte Dateien (z. B. via sort) zeilenweise zu vergleichen. Dem Programmaufruf liegt folgende Syntax zugrunde: comm [OPTIONEN] DATEI1 DATEI2 Wird comm ohne Option aufgerufen, erzeugt das Programm eine Ausgabe mit drei Spalten: Die erste spalte beinhaltet alle Zeilen, die nur in DATEI1 vorkommen, die zweite Spalte beinhaltet alle Zeilen die nur in DATEI2 vorkommen und die dritte Spalte beinhaltet alle Zeilen, die in beiden Dateien vorkommen. Das Programm unterstützt drei Optionen: -1 = einzigartige Zeilen aus DATEI1 unterdrücken -2 = einzigartige Zeilen aus DATEI2 unterdrücken -3 = alle Zeilen unterdrücken, die in beiden Dateien enthalten sind |
cp | Dateien oder Verzeichnisse kopieren Der Kommandozeilenbefehl cp (copy) kommt zur Anwendung, um Dateien und Verzeichnisse zu kopieren. Die grundlegende Syntax des Befehls lautet: cp [OPTIONEN] QUELLE ZIEL Bei der QUELLE handelt es sich um das Element, das kopiert werden soll. Als ZIEL des Kopiervorgangs wird entweder eine Datei oder eine Verzeichnis definiert. Definieren Sie eine bereits vorhandene Datei als Zieldatei, wird deren Inhalt mit dem der Quelldatei überschrieben. Alternativ haben Sie die Möglichkeit, die Zieldatei als neue Datei mit gewünschtem Namen zu erstellen. Sollen mehrere Dateien kopiert werden, muss das Ziel ein Verzeichnis sein. Gleiches gilt für den Fall, dass ein Verzeichnis kopiert wird. Eine Quelldatei in eine Zieldatei im aktuellen Verzeichnis kopieren: cp [OPTIONEN] QUELLDATEI ZIELDATEI Beispiel: cp datei.txt datei_kopie.txt Eine Quelldatei aus dem aktuellen Verzeichnis in ein Zielverzeichnis kopieren: cp [OPTIONEN] QUELLDATEI ZIELVERZEICHIS Beispiel: cp datei.txt home/user/dokumente/2017 Mehrere Quelldateien in ein Zielverzeichnis kopieren: cp [OPTIONEN] QUELLDATEI1 QUELLDATEI2 ZIELVERZEICHNIS Beispiel: cp datei.txt datei.odt home/user/dokumente/2017 Ein Quellverzeichnis aus dem aktuellen Verzeichnis in ein Zielverzeichnis kopieren: cp QUELLVERZEICHNIS ZIELVERZEICHNIS Beispiel: cp verzeichnis1 home/user/dokumente/2017 Sollen Verzeichnisse inklusive aller Inhalte kopiert werden, müssen alle Unterverzeichnisse mithilfe der OPTION -R in den Kopiervorgang eingeschlossen werden. |
cut | Dateiinhalte extrahieren Der Befehl cut ermöglicht es Ihnen, Inhalte spaltenweise aus den Textzeilen einer Datei (z. B. Log- oder CSV-Dateien) zu extrahieren. Die Syntax des Befehls lautet: cut [OPTIONEN] DATEI Die genaue Position eines zu extrahierenden Ausschnitts wird über die Optionen -b (Byteposition), -c (Zeichenposition), -d (Trennzeichen) und -f (Feld) definiert. |
diff | Dateien oder Verzeichnisse abgleichen Das Kommandozeilenprogramm diff dient dem Vergleich zweier Dateien. Alternativ lässt sich via diff ermitteln, ob zwei Verzeichnisse gleiche Dateien beinhalten. Der Aufruf im Terminal Erfolg gemäß folgender Syntax: diff [OPTIONEN] DATEI1 DATEI2 |
dirname | Dateipfad ausgeben dirname stellt das Gegenstück zu basename dar. Der Kommandozeilenbefehl ermöglicht es, den Pfadanteil aus einem Dateipfad zu extrahieren und ohne Dateinamen im Terminal auszugeben. Die Syntax des Befehls lautet: dirname [OPTIONEN] Geben Sie beispielsweise $ dirname /home/benutzer/bild.jpg ins Terminal ein, um folgende Ausgabe zu erhalten: /home/benutzer |
file | Dateityp ausgeben Mit dem Kommandozeilenbefehl file lassen sich Informationen zum Dateityp einer Datei ausgeben. Dem Aufruf liegt folgendes Schema zugrunde: file [OPTIONEN] DATEI |
ln | Verknüpfung zu Datei oder Verzeichnis erstellen Das Kommandozeilenprogramm ln (kurz für link) erzeugt eine Verknüpfung zu einer Datei oder einem Verzeichnis. Dadurch wird ein weiterer Verzeichnis-Eintrag für diese Datei erzeugt, der es Ihnen ermöglicht, über einen weiteren Datei-Pfad auf die entsprechende Datei zuzugreifen. Der Aufruf des Kommandozeilenprogramms ln muss immer mindestens den Pfad zur Quelldatei enthalten. ln [OPTIONEN] pfad/zur/quelldatei Die Verlinkung wird in diesem Fall im aktuellen Arbeitsverzeichnis unter demselben Namen erstellt. Alternativ haben Sie die Möglichkeit, einen Zielpfad anzugeben und die Verknüpfung beliebig zu benennen: ln [OPTIONEN] pfad/zur/quelldatei pfad/zur/verknüpfung ln erstellt in der Standardeinstellung sogenannte Hardlinks. Diese eignen sich nicht, um Verknüpfungen zu Verzeichnissen zu erstellen. Zudem lassen sich Hardlinks nicht über Partitionsgrenzen hinweg verwenden. Der Befehl kommt daher oft mit der OPTION -s (--symbolic) zum Einsatz, mit der sich sogenannte symbolische Verknüpfungen auch über Dateisystemgrenzen hinweg erstellen lassen. Symbolische Links verweisen immer auf einen „echten“ Dateipfad und hängen von diesem ab. |
lsof | Geöffnete Dateien im Terminal ausgeben lsof steht für list open files, ein Hilfsprogramm, das Ihnen Informationen über geöffnete Dateien nach PID (Prozess-ID) sortiert im Terminal ausgibt. Der Aufruf über das Terminal erfolgt nach folgendem Schema: lsof [OPTIONEN] Da unixoide Systeme wie Linux dem Grundsatz „Everything is a file“ (Alles ist eine Datei) folgen, ist die Liste, die lsof ausgibt, entsprechend lang. In der Regel kommen daher Optionen zum Einsatz, um die Ausgabe einzugrenzen. |
md5sum | Prüfsummen berechnen Mithilfe des Kommandozeilenbefehls md5sum lassen sich MD5-Prüfsummen für Dateien berechnen und überprüfen. |
mv | Datei oder Verzeichnis verschieben Das Kommandozeilenprogramm mv (move) kopiert eine Datei oder ein Verzeichnis und löscht das Ursprungselement. Erfolgt dies innerhalb desselben Verzeichnisses, kann mv zum Umbenennen von Dateien verwendet werden. Dem Programmaufruf liegt folgendes Schema zugrunde: mv [OPTION] QUELLE ZIEL Anwendungsbeispiele: Eine Datei in ein anderes Verzeichnis verschieben: mv [OPTIONEN] QUELLDATEI ZIELVERZEICHNIS Beispiel: mv datei1.txt home/user/dokumente/2017 Mehrere Quelldateien in ein Zielverzeichnis verschieben: mv [OPTIONEN] QUELLDATEI1 QUELLDATEI2 ZIELVERZEICHNIS Beispiel: mv datei1.txt datei2.txt home/user/dokumente/2017 Unterverzeichnis aus dem aktuellen Verzeichnis in ein Zielverzeichnis verschieben: mv [OPTIONEN] VERZEICHNISNAME_ALT VERZEICHNISNAME_NEU Beispiel: mv verzeichnis1 home/user/dokumente/2017 Datei im aktuellen Verzeichnis umbenennen: mv [OPTIONEN] DATEINAME_ALT DATEINAME_NEU Beispiel: mv datei1.txt datei2.txt Unterverzeichnis im aktuellen Verzeichnis umbenennen: mv [OPTIONEN] VERZEICHNISNAME_ALT VERZEICHNISNAME_NEU Beispiel: mv verzeichnis1 verzeichnis2 |
paste | Dateiinhalte spaltenweise zusammenführen Ähnlich wie cat ermöglicht auch das Kommandozeilenprogramm paste die Ausgabe von Dateiinhalten auf die Standardausgabe. Doch während cat Inhalte lediglich aneinanderfügt, verknüpft paste diese spaltenweise. Das Grundschema des Befehls lautet: paste [OPTIONEN] DATEI1 DATEI2 … Im Standardmodus werden die aufgeführten Dateien so zusammengeführt, dass alle Zeilen mit derselben Zeilennummer in dieselbe Zeile der Ausgabe übertragen werden. Jede Zeile der Ausgabe enthält somit Inhalte aller Eingabedateien. Welches Trennzeichen paste verwendet, lässt sich mithilfe der Option -d individuell anpassen. Als Standardtrennzeichen kommen Tabs zum Einsatz. Über die Option -s (seriell) lässt sich zudem ein zweiter Modus aktivieren. Bei diesem werden alle Zeilen der ersten Eingabedatei in die erste Zeile der Ausgabe übertragen. Die Daten aller anderen Eingabedateien folgen jeweils in separaten Ausgabezeilen. Jede Zeile der Ausgabe enthält somit lediglich Inhalte einer Eingabedatei. |
rename | Dateien umbenennen Bei rename handelt es sich um ein Kommandozeilenprogramm, das es ermöglicht, Dateien und Ordner mithilfe perl-kompatibler regulärer Ausdrucke (Regex) umzubenennen. Anders als mv bietet sich rename damit für Dateioperationen an, bei denen die Namen mehrerer Dateien teilweise oder ganz angepasst werden sollen. Verwenden Sie rename nach folgendem Schema: rename [OPTIONEN] 'REGULÄRER_AUSDRUCK' DATEIEN Reguläre Ausdrücke entsprechen bei Ersetzungen folgender Syntax: s/SUCHMUSTER/ERSETZUNG/MODIFIER In folgendem Beispiel werden alle .html-Dateiendungen in .xhtml umbenannt. rename 's/\.html$/.xhtml/' *.html |
rm | Datei oder Verzeichnis löschen Das Kommandozeilenprogramm rm (remove) löscht Dateien oder ganze Verzeichnisse unwiederbringlich. Dem Programmaufruf liegt folgendes Schema zugrunde: rm [OPTIONEN] DATEI oder rm [OPTIONEN] VERZEICHNIS Soll ein Verzeichnis inklusive aller Unterverzeichnisse gelöscht werden, verwenden Sie rm mit der OPTION -R (--recursive). rm -R VERZEICHNIS Mehrere Dateien oder Verzeichnisse werden mit Leerzeichen getrennt. rm [OPTIONEN] DATEI1 DATEI2 … |
shred | Dateien „schreddern“ Bei shred handelt es sich um ein Kommandozeilenprogramm, das ein sicheres Löschen von Dateien ermöglicht. Ausgewählte Elemente werden im Rahmen des Löschvorgangs überschrieben und lassen sich somit selbst mit forensischen Mitteln nicht wiederherstellen. Die allgemeine Syntax des Befehls lautet: shred [OPTIONEN] DATEI Nutzen Sie shred mit folgenden Optionen, um eine einzelne Datei unwiederbringlich zu löschen: shred -fuz DATEI Die Option -f erzwingt den Löschvorgang, -z überschreibt die Dateiinhalte mit Nullen (voreingestellt sind Zufallsdaten). Abschließend entfernt -u ähnlich wie das rm-Kommando die geschredderte Datei aus dem Dateisystem. |
sort | Dateilisten und Programmausgaben sortieren Nutzen Sie den Kommandozeilenbefehl sort, um Dateilisten und Programmausgaben zeilenweise numerisch und alphabetisch zu sortieren. Die allgemeine Syntax des Befehls lautet: sort [OPTIONEN] DATEI Die Sortiermethode lässt sich mithilfe von Optionen anpassen: zum Beispiel numerisch (-n), zufällig (-R) oder in umgekehrter Reihenfolge (-r). |
split | Dateien aufteilen Der Kommandozeilenbefehl split wird verwendet, um Dateien aufzuteilen. Die zugrundeliegende Syntax lautet: split [OPTIONEN] [INPUT [PRÄFIX]] Der Platzhalter INPUT entspricht der Datei, die aufgeteilt werden soll. Das PRÄFIX fungiert als Vorsilbe für die Namen der Teildateien. Deren Benennung liegt folgendes Schema zugrunde: PRÄFIXaa, PRÄFIXab, PRÄFIXac … Wird kein Präfix definiert, greift split auf das Standardpräfix x zurück. Mit der Option -b (Bytes) lässt sich die Größe der Teildateien festlegen. Die Angabe erfolgt wahlweise in Byte (b), Kilobyte (k) oder Megabyte (m). Beispiel: split -b 95m archiv.tgz split-archiv.tgz. Der Befehl split teilt die Datei archiv.tgz in Teildateien zu 95 Megabyte auf und benennt diese wie folgt: split-archiv.tar.aa split-archiv.tar.ab split-archiv.tar.ac Durch split aufgeteilte Dateien lassen sich mithilfe des Kommandozeilenbefehls cat wieder zusammenführen. cat split-archiv.tar.* > archiv.tar |
stat | Zeitstempel ausgeben Mit dem Kommandozeilenbefehl stat (status) lassen sich Zugriffs- und Änderungs-Zeitstempel ausgewählter Dateien und Verzeichnisse ausgeben. Die allgemeine Syntax des Befehls lautet: stat [OPTIONEN] DATEI Das Ausgabeformat lässt sich mithilfe von Optionen anpassen. |
touch | Zeitstempel ändern Der Kommandozeilenbefehl touch wird verwendet, um Zugriffs- und Änderungs-Zeitstempel von Dateien zu verändern. Wird touch auf eine nicht-existente Datei angewendet, wird diese automatisch angelegt. Der Befehl eignet sich daher auch dazu, leere Dateien zu erstellen. Nutzen Sie touch nach folgendem Schema: touch [OPTIONEN] DATEI Um den Zeitstempel einer Datei auf ein gewünschtes Datum zu setzten, verwenden Sie die OPTION -t inklusive Zeitangabe im Format [JJ]MMTThhmm[.ss]. Beispiel: touch -t 1703231037 datei.txt Zugriffs- und Änderungszeitstempel werden auf den 23. März 2017, 10:37 gesetzt. Die Modifikation lässt sich über die Optionen -a und -m auf Zugriffs- bzw. Änderungszeitstempel eingrenzen. Wird der Befehl touch ohne Option -t verwendet, kommt der aktuelle Zeitstempel zum Einsatz. |
uniq | Dopplungen inDateilisten und Programmausgaben tilgen Der Kommandozeilenbefehl uniq wird in der Regel in Kombination mit sort verwendet, um sortierte Dateien von doppelten Zeilen zu bereinigen. In folgendem Beispiel wird der Befehl sort durch eine Pipe (|) mit dem Befehl uniq verknüpft, um eine Datei zunächst zu sortieren und anschließend ohne doppelte Zeilen auszugeben: sort datei.txt | uniq |