Kommandozeilen-Befehle

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Einleitung

Diese Seite soll als Informationspool für Linux-Anfänger dienen, die auf der Suche nach Lösungen für die kleinen Probleme des Alltags sind. Beim Erforschen des VDR oder gar beim Fehlersuchen können die folgenden Beispiel helfen.

Hinweis
Hinweis

Bitte nicht vergessen: die Groß- und Kleinschreibung ist bei Kommandozeilen-Befehlen unbedingt zu beachten!


Befehle für die Kommandozeile

Anzeigen der Hilfe zu einem Befehl

Hinweis
Hinweis

Der wichtigste Befehl, zeigt das Manual (die man-Page) eines Befehls an. Bei Unsicherheit in der Verwendung der unten genannten Befehle sollte man <BEFEHL> die erste Anlaufstelle sein. Übrigens findet man in google mit den Suchworten 'man <BEFEHL>' die man-Page jedes Linux/Unix Befehls.


Beispiel

man lsmod

Anzeigen der Datenübertragungsrate eines IDE Gerätes

Zeigt die Datenübertragungsrate für das gewählte IDE Gerät wie z.B. Festplatte, CDrom, DVDrom, Brenner.

hdparm -tT /dev/hd{a,b,c,d}

Anzeigen des benutzten Speicherplatzes

disk usage zeigt den Speicherverbrauch je Verzeichnis an.

du {optional: Ordner}

Anzeigen des freien Speicherplatzes

disk free zeigt den freien Speicher an.

df {optional: Ordner}

Anzeige der geladenen Kernelmodule

listmodules zeigt die aktuell geladenen Kernelmodule.

lsmod

Anzeigen des System Message Buffer mit dmesg

dmesg kopiert die Meldungen im system message buffer zur Standardausgabe. Beispiel:

dmesg | grep -i scsi

dmesg kopiert alle Meldungen zur Standardausgabe (Konsole), um sinnvolle Zeilen herauszusuchen wird hier die Ausgabe von dmesg nach allem was "scsi" enthält durchsucht. Näheres auf dieser Seite zu grep und dem pipe-Operator.

Anzeigen von Dateien mit cat

cat /proc/interrupts

Zeigt die Verteilung der Interrupts, allerdings nur, wenn das proc Dateisystem eingebunden ist.

Erstellen eines Patch (diff-Dateien)

diff -Nru <from-dir> <to-dir>

diff Dateien werden vorwiegend dazu benutzt, um Änderungen im Quelltext von Programmen als Patch zu veröffentlichen.

Benutzung von pipes: der "|" Operator

Eine pipe leitet die (Standard-)Ausgabe eines Befehls zu einem weiteren Befehl weiter. Beispiel:

lsmod | grep ivtv

Der Befehl lsmod zeigt alle geladenen Kernelmodule, der Operator | leitet dessen Ausgabe zum Befehl grep weiter, der wiederum nach allen Textzeilen sucht, die 'ivtv' enthalten und diese auf der Konsole ausgibt.

Packen/Entpacken von Dateien

Packen von Dateien

Erstellen eines gzip Tarballs

tar czvf zielarchiv.tar.gz quellverzeichnis

Erstellen eines bzip2 Tarballs (bevorzugt, weil kleinere Dateien)

tar cjvf zielarchiv.tar.bz2 quellverzeichnis

Entpacken von Dateien

tar xzvf quellarchiv.tgz

oder

tar xzvf quellarchiv.tar.gz

oder

tar xjvf quellarchiv.tar.bz2

tar benötigt die Angabe des Kompressionsalgorithmus, für gzip-komprimierte Archive gibt man z, für bzip2-Komprimierte j an. Der Parameter x weist tar an, eine Dekomprimierung vorzunehmen. Mit v schaltet man den verbose-Modus ein, so bekommt man ausführliche Informationen, was tar macht. Nach dem Parameter f erwartet tar den Dateinamen des zu bearbeitenden Archivs an.

Erstellen von Archiven

tar erstellt eine Datei aus mehreren Dateien, packt aber nicht. Deswegen wird anschließend die tar-Datei gepackt. Der Weg beim Entpacken ist genau anders herum und kann deswegen auch alternativ mit einer pipe realisiert werden.
Beispiel:

tar -cvf /tmp/Backup-etc.tar /etc/

Erstellt (create) die Datei (file) /tmp/Backup-etc.tar die das Verzeichnis /etc gepackt enthält, zusätzlich werden die Meldungen angezeigt (verbose). Recht nützlich, wenn man schnell ein Backup der Konfigurationsdateien ziehen möchte. Auch hier kann man mit z die gzip- und mit j die bzip2-Kompression benutzen.
Beispiel (gzip-Kompression):

tar -cvzf /tmp/Backup-etc.tar.gz /etc/

Beispiel (bzip2-Kompression):

tar -cvjf /tmp/Backup-etc.tar.bz2 /etc/

Suchen von Dateien

find /usr -name dateiname

/usr spezifiziert hier das Startverzeichnis.

Suchen mit grep

grep = "Global search for a regular expression and print out matched lines" Durchsucht Dateien nach einem Muster und gibt passende Stellen aus. Beispiel:

grep -i append /etc/lilo.conf

Durchsucht die Datei /etc/lilo.conf nach dem Begriff append, Groß- und Kleinschreibung wird wegen dem Parameter "-i" dabei ignoriert. Passende Stellen werden auf die Konsole geschrieben.

Logdateien ansehen mit tail

tail dient zum Anzeigen von Textdateien.

tail -f /var/log/messages

Der Parameter bewirkt, dass laufend Änderungen an dieser Datei auf der Konsole dargestellt werden.
Hinweis: dieser Befehl läuft so lange, bis er mit <STRG>+c abgebrochen wird.

tail -n ZEILEN /var/log/messages

Der Parameter -n gibt an, wieviele Zeilen der Datei angezeigt werden. Das Programm wird dann beendet.

Anzeige der aktuellen Kernelversion mit uname

uname -r

Aktualisierung des EPG per Kommandozeile

/usr/bin/tvm2vdr.pl
Voraussetzung installiertes Addon tvmovie2vdr, startet das Online-Update, man kann den Fortschritt auf der Konsole beobachten.

Anzeigen der CPU Auslastung mit top

top

top zeigt die aktuelle CPU Auslastung und Speicherauslastung an. top wird mit "q" oder "STRG+c" beendet.

Beenden von Prozessen

Prozesse werden mit kill, pkill oder killall beendet.
kill erwartet eine Prozess-ID, die mit dem Befehl ps ermittelt werden kann:

bash-3.00# ps -A | grep k3b
 4462 pts/3    00:00:01 k3b

Hier wird die Prozess-ID (4462) vom Programm k3b ermittelt. Einfacher geht es mit pgrep:

bash-3.00# pgrep k3b
4462

Wenn die Prozess-ID bekannt ist, kann der Befehl kill benutzt werden:

kill 4462

Auch hier gibt es wieder einfachere Wege:

pkill k3b

oder

killall k3b

beenden alle Prozesse namens "k3b". Einige Prozesse lassen sich nur forced beenden:

pkill -9 -x "k3b"

Der Parameter -9 bewirkt dass k3b forciert beendet wird, -x bewirkt hier, dass nur Prozesse die exakt k3b heißen beendet werden, nicht aber Prozesse, die k3b im Namen haben wie z.B. "jlk3beta" (zugegebenermaßen ist dieser Befehl frei erfunden).

Links

  1. zurück zu Linux für Anfänger
  2. 7teiliger Bash-Grundkurs
  3. Einzeiler