Sitemap | Nicht eingeloggt

Layout: V2_DayTime
V2_DayTime
| V2
V2
| V2 Dark
V2 Dark
| Alle

DE

Tux

Einführung in die gängigsten Commandline-Befehle

Die Commandline / Kommandozeile in Linux ist sehr stark. Ungleich mächtiger als die Commandline (cmd) in Windows. Das macht sie aber auch ungleich komplizierter. Deswegen hier eine kleine Einführung in die gängigsten Commandlinebefehle in Linux.

Diejenigen Befehle, die aktiv bleiben nach dem Aufruf, können immer mit CTRL-c beendet werden und man kommt zurück auf die Kommandozeile. Falls man ein Programm im Hintergrund weiterlaufen lassen und die Kommandozeile trotzdem schon weiter bedienen möchte, kann man dem Befehl ein & anfügen! Zu & (und nohup!) hat es eine Anleitung unter Linux / Debian > Prozesse im Hintergrund ausführen.

Generelles

sudo


Ausführliche Infos: Hier klicken

sudo Befehl

Mit sudo vor beliebigen Befehlen kann man den jeweiligen Befehl als Root (Superuser, Wurzel oder Quelle; So wird der Administrator in Unix Systemen genannt) ausführen.
Beispiel:

Dieser Befehl führt shutdown -r now als Root aus. shutdown -r now macht einen shutdown und anschliessend gleich einen Neustart. Gängigster Befehl um Linux-Server auf der Stelle neu zu starten.

sudo shutdown -r now

Nach diesem Befehl werden alle folgenden Befehle bis man exit macht als root ausgeführt. Nützlich wenn man mehrere Befehle hintereinander als Root ausführen möchte. Die Terminalanzeige ändert sich danach auf root@maschine.

sudo -s

shutdown


Ausführliche Infos: Hier klicken

shutdown Option Wann

Mit shutdown kann man den Computer herunterfahren oder neu starten. Dieser Befehl funktioniert nur mit Adminrechten. Man muss ihn demnach immer mit sudo ausführen.
So schalten wir den Computer aus. Computer ohne ausschaltknopf kann man nach man diesen Befehl ausgeführt hat vom Strom nehmen:

sudo shutdown -h now

So starten wir einen Computer neu:

sudo shutdown -r now

shutdown kann auch mit einer Zeitangabe ausgeführt werden. Etwa so:

shutdown -h 20:00

So wird er Computer in 60 Sekunden neu gestartet:

shutdown -r -t 60

man


Ausführliche Infos: Hier klicken

man Befehl

Mit man kann man das Handbuch / die Anleitung zu einem gewünschten Befehl anzeigen lassen.
Beispiele:

So sieht man das Handbuch für den Befehl ls:

man ls

Man kann bei vielen Befehlen auch --help anhängen um eine Kurzanleitung ausgegeben zu bekommen. Zum Beispiel so:

Befehl --help

cd


Ausführliche Infos: Hier klicken

cd Verzeichnis

Mit cd kann man in ein gewünschtes Verzeichnis wechseln.
Beispiel:

So wechselt man in das Verzeichnis /var/www (Falls die Berechtigungen dazu ausreichen):

cd /var/www

So wechselt man ein Verzeichnis höher:

cd ..

ls


Ausführliche Infos: Hier klicken

ls -Option Verzeichnis

Mit ls kann man den Inhalt eines Verzeichnisses anzeigen.
Beispiele:

Der nächste Befehl zeigt den Inhalt des Verzeichnis /var/www an, falls die Berechtigungen dazu ausreichen.

ls /var/www

Der nächste Befehl zeigt den Inhalt des Verzeichnis /var/www mit erweiterten Details (z.B.: Berechtigungen und Eigentümer) an, falls die Berechtigungen dazu ausreichen.

ls -l /var/www

Der nächste Befehl zeigt den Inhalt des aktuellen Verzeichnisses mit erweiterten Details (z.B.: Berechtigungen und Eigentümer) an, falls die Berechtigungen dazu ausreichen.

ls -l

Der nächste Befehl zeigt den Inhalt des aktuellen Verzeichnisses inklusive versteckte Dateien an.

ls -a

Der nächste Befehl zeigt den Inhalt des aktuellen Verzeichnisses mit erweiterten Details (z.B.: Berechtigungen und Eigentümer) inklusive versteckte Dateien an.

ls -la

cp


Ausführliche Infos: Hier klicken

cp Quelle Ziel

Mit cp kann man Dateien, Dateiinhalte und Verzeichnisse kopieren.
Beispiele:

Der nächste Befehl kopiert datei.txt nach datei.bak im gleichen Verzeichnis. Wenn die datei.bak Datei nicht schon existiert, erstellt der cp Befehl sie. Wenn sie schon existiert, ersetzt der cp Befehl den Inhalt mit dem Inhalt der datei.txt Datei.

cp datei.txt datei.bak

Der nächste Befehl kopiert die Datei jones nach /[PFAD]/[PFAD]/jones und die Datei smith nach /[PFAD]/[PFAD]/smith. Originaldateien liegen im Ordner wo man sich befindet.

cp jones smith /[PFAD]/[PFAD]

Der nächste Befehl kopiert die Dateien bild1.jpg, bild234.jpg oder bild_abc.jpg in das Verzeichnis ziel, wenn die verwendete Shell das Wildcard * expandiert.

cp bild*.jpg ziel/

Der nächste Befehl kopiert die datei.txt Datei nach datei.bak. Anstatt die Datei mit dem aktuellen Datums- und Zeitstempel gibt das System der datei.bak Datei das gleiche Datum und die gleiche Zeit wie die datei.txt Datei. Die datei.bak Datei übernimmt / erbt auch die Zugriffsrechte.

cp -p datei.txt datei.bak

Der nächste Befehl kopiert das Verzeichnis clients, inklusive allen Dateien, Unterordner und die Dateien in den Unterordnern ins Verzeichnis /home/[USERNAME]/customers/clients

cp -R /home/nick/clients /home/[USERNAME]/customers

scp


Ausführliche Infos: Hier klicken

scp Quelle Ziel

Mit scp kann man Dateien, Dateiinhalte und Verzeichnisse per SSH verschlüsselt auf entfernte Rechner kopieren (oder auch in die andere Richtung).
Beispiele:

Der nächste Befehl kopiert datei.txt in /var/www/ nach /home/BENUTZERNAME/mysqldumps/datei.bak auf dem anderen Rechner mit der IP 192.168.0.51. Wenn die datei.bak Datei nicht schon existiert, erstellt der scp Befehl sie, vorausgesetzt man hat auf das gewünschte Ziel Schreibrechte und das Verzeichnis existiert bereits.

scp /var/www/datei.txt BENUTZERNAME@192.168.0.51:mysqldumps/datei.bak

Das Passwort für BENUTZERNAME muss jetzt natürlich eingegeben werden.
Wenn man beim Zielrechner wie oben gezeigt kein vorausgehenden / (also NICHT USER@192.168.0.51:/var/www/datei.bak) angibt, ist der Pfad relativ zum Homeverzeichnis von USER. Wenn man den führenden Slash angibt, ist der Pfad von / (root) ausgehend angegeben.

mv


Ausführliche Infos: Hier klicken

mv Quelldatei Zieldatei
mv Quelldateien Zielverzeichnis

Mit mv kann man Dateien und Verzeichnisse verschieben.
Beispiele:

Der nächste Befehl benennt Datei meinedatei.txt in meineneuedatei.txt um

mv meinedatei.txt meineneuedatei.txt

Der nächste Befehl verschiebt Dateien einedatei.txt und eineanderedatei.txt nach /[PFAD]

mv einedatei.txt eineanderedatei.txt /[PFAD]

rm


Ausführliche Infos: Hier klicken

rm [Optionen] Dateiname

Mit rm kann man Dateien und Verzeichnisse löschen.
Beispiele:

Der nächste Befehl entfernt die Datei test.txt aus dem Verzeichnis in dem man sich gerade befindet.

rm test.txt

Gleich wie oben, aber mit Userbestätigung.

rm -i test.txt

Der nächste Befehl löscht das Verzeichnis /[PFAD] auch wenn es nicht leer ist. Inklusive aller Unterordner samt Inhalt.

rm -r /[PFAD]

find


Ausführliche Infos: Hier klicken

find Startverzeichnis [Optionen] Test Aktion

Mit find kann man Dateien und Verzeichnisse suchen. Standardaktion ist print für die Ausgabe in der Shell.
Beispiele:

Der nächste Befehl durchsucht alle Verzeichnisse ( / = root oder hauptverzeichnis) die im Dateinamen "dateiname" haben. -name macht das Casesensitiv.
Anstatt -name kann man auch -iname verwenden, dann ist der Befehl find nicht mehr Casesensitiv.

find / -name dateiname

Der nächste Befehl findet alle Dateien im Verzeichnis /var/spool die vor mehr als 60 Tagen modifiziert wurde.

find /var/spool -mtime +60

Der nächste Befehl findet jedet Datei im Verzeichnis /var/spool die exakt vor einem Tag modifiziert wurde.

find /var/spool -mtime 1

Der nächste Befehl findet jede Datei im Verzeichnis /var/spool die vor weniger als einem Tag modifiziert wurde.

find /var/spool -mtime -1

Der nächste Befehl findet jede Datei im Verzeichnis /var/spool die vor mehr als einem Tag modifiziert wurde.

find /var/spool -mtime +1

So findet man rekursiv (start . = der aktuelle Ordner) alle Dateien mit der Endung .JPG und löscht diese anschliessend. Das Kommando MUSS mit einem ; abgeschlossen werden:

find . -iname '*.jpg' -type f -exec rm -f {} \;

grep


Ausführliche Infos: Hier klicken oder hier klicken

grep [optionen] Suchstring [Datei(-liste)]

Mit grep kann man Dateien und Ausgaben durchsuchen und die Linien mit dem gesuchten Wort (auch farblich markiert!) ausgeben.
Beispiele:

Der nächste Befehl durchsucht die Datei /var/www/inhalt/linux_commandline.php auf die Zeichenfolge Dateien und gibt die gefundenen Linien aus.

grep Dateien /var/www/inhalt/linux_commandline.php

Der nächste Befehl durchsucht die Datei /var/www/inhalt/linux_commandline.php nicht-Casesensitive (Keine Unterscheidung zwischen Gross- und Kleinschreibung; Option -i) auf die Zeichenfolge dateien und gibt die gefundenen Linien aus.

grep -i dateien /var/www/inhalt/linux_commandline.php

Der nächste Befehl durchsucht die Datei /var/www/inhalt/linux_commandline.php nicht-Casesensitive (Keine Unterscheidung zwischen Gross- und Kleinschreibung) auf die Zeichenfolge dateien und gibt die Anzahl der gefundenen Linien (Option -c) aus.

grep -ic dateien /var/www/inhalt/linux_commandline.php

Der nächste Befehl durchsucht die Datei /var/www/inhalt/linux_commandline.php nicht-Casesensitive (Keine Unterscheidung zwischen Gross- und Kleinschreibung) auf die Zeichenfolge dateien und gibt die gefundenen Linien aus wobei der Suchausdruck farbig (Option --color=auto) dargestellt wird.

grep -i --color=auto dateien /var/www/inhalt/linux_commandline.php

Der nächste Befehl durchsucht im derzeitigen Verzeichnis und rekursiv (Option -r) in allen Unterverzeichnissen alle Dateien nicht-Casesensitive (Keine Unterscheidung zwischen Gross- und Kleinschreibung) auf die Zeichenfolge dateien und gibt die Linien aus wobei der Suchausdruck farbig dargestellt wird.

grep -ir --color=auto dateien *

Nochmals dasselbe wie vorher, aber mit Unterdrückten Fehlermeldungen (Option -s):

grep -irs --color=auto dateien *

Zeige alle Zeilen in der Datei /var/www/inhalt/linux_commandline.php in der das Suchmuster dateien nur als solches vorkommt (Option -w) und nicht ein Bestandteil eines Wortes ist (Ignoriere zB Testdateien):

grep -w dateien /var/www/inhalt/linux_commandline.php

Man kann die Ausgabe eines Befehls auch mittels einer Pipe dem grep-Befehl übergeben. Im folgenden Beispiel zeigt ps aux die gesamte Prozessliste an, die Ausgabe wird mit einer Pipe (|) an den grep-Befehl weitergereicht, welcher die Prozessliste nach dem Suchmuster vsftpd filtert:

ps aux | grep vsftpd

Das ist eine Möglichkeit den Inhalt eines Verzeichnisses auszugeben und von grep nur die Linien mit dem Suchausdruck linux anzeigen zu lassen:

ls | grep linux

Das ist eine Möglichkeit den Inhalt eines Verzeichnisses auszugeben und von grep nur die Linien mit dem Suchausdruck USERNAME anzeigen zu lassen. Somit sieht man nur die Dateien und Verzeichnisse die dem User USERNAME gehören:

ls -l | grep USERNAME

Prozesse

top


Ausführliche Infos: Hier klicken

top Optionen

Mit top kann man die Prozesse die aktuell laufen sortiert nach Prozessorauslastung listen. Auch wird die Liste laufend aktualisiert, es ist also nicht eine reine, einmalige Ausgabe.
Beispiele:

So werden alle Prozesse sortiert nach Prozessorauslastung gelistet:

top

So werden alle Prozesse sortiert nach RAM-Belegung gelistet:

top -a

ps


Ausführliche Infos: Hier klicken

ps Optionen

ps ist ein Unix-Kommando, das eine Liste aller Prozesse, welche momentan laufen oder sich im Zombie-Status befinden, auf dem Bildschirm ausgibt. Der Begriff ps ist eine Abkürzung für process status.
Beispiele:

So werden alle Prozesse angezeigt:

ps -e

So werden alle laufenden Prozesse angezeigt, die von Root ausgeführt werden:

ps -U root -u root u

Diesen folgenden Befehl verwende ich sehr häufig. So werden alle laufenden Prozesse angezeigt und danach nach Prozessname (z.B. Steam) gefiltert. Danach kann man mit Kill und der ProzessID den Prozess abschiessen:

ps aux | grep Prozessname

kill


Ausführliche Infos: Hier klicken

kill Parameter eine oder mehrere Prozess-IDs

Mit kill kann man laufende Prozesse beenden.
Beispiele:

So wird der Prozess mit der ID 4711 beendet (alle 3 Varianten bewirken das Selbe):

kill 4711
kill -TERM 4711
kill -15 4711

So kann man Prozesse direkt ohne jegliches Abwarten "abschiessen". Das sollte man mit Vorsicht und nur im Notfall machen!
Beide Varianten entsprechen intern demselben Befehl:

kill -KILL pid
kill -9 pid

So werden alle laufenden Prozesse beendet. Wird zum Beispiel beim Herunterfahren ausgeführt:

killall

pkill


Ausführliche Infos: Hier klicken

pkill Prozessname

pkill ist fast gleich wie kill, akzeptiert aber den Prozessnamen, was das Ganze enorm vereinfacht.
Beispiele:

So wird der Prozess mit dem Namen Firefox beendet:

pkill firefox

Systemhardware und Einstellungen prüfen / ändern

df


Ausführliche Infos: Hier klicken

df Optionen

Mit df kann man den freien Speicherplatz auf den Festplatten anzeigen lassen.
Beispiel:

Dieser Befehl zeigt den freien Speicherplatz auf den Mountpunkten in für Menschen lesbaren Einheiten:

df -h

Mit diesem Befehl zeigt man den freien Speicherplatz für nur die in / eingehängter Festplatte in für Menschen lesbarer Form an.
Zusätzlich wird der Dateisystemtyp mit der Option T auch noch angezeigt:

df -hT /

uname


Ausführliche Infos: Hier klicken

uname Optionen

Mit uname kann man die Kernelversion und zusätzliche Infos ausgeben.
Beispiele:

So sieht man die Kernelversion mit allen Infos:

uname -a

So sieht man nur die Kernelversion:

uname -r

ifconfig


Ausführliche Infos: Hier klicken

ifconfigNetzwerkschnittstelle [Optionen] Aktion

ifconfig zeigt alle Netzwerkschnittstellen an und ist in der Lage mit den richtigen Optionen direkt Änderungen an den Geräten vorzunehmen.
Beispiele:

So werden alle Netzwerkschnittstellen mit Details aufgelistet:

ifconfig

iwconfig


Ausführliche Infos: Hier klicken

iwconfig Wirelessschnittstelle [Optionen] Aktion

iwconfig ist ifconfig sehr ähnlich, aber speziell für Kabellose Verbindungen gedacht.
Beispiele:

So werden alle Netzwerkschnittstellen aufgelistet. Nur für die Kabellosen werden weitere Details angezeigt:

iwconfig

Ich habe häufig das Problem dass Wireless-Verbindungen einen Schluckauf haben in Linux. Das heisst alle paar Minuten verliere ich plötzlich die Verbindung und muss warten bis das Netz wiederkommt. Schuld ist die Stromsparfunktion, die nicht von allen Netzwerkkarten gleich gut verstanden und umgesetzt wird.
Deshalb schalte ich die Stromsparfunktion komplett aus:

sudo iwconfig wlan0 power off

Um das permanent zu machen, benutze bitte die Anleitung unter Ubuntu > WLAN Probleme beheben.

Useroperationen

chmod


Ausführliche Infos: Hier klicken oder hier klicken

chmod [options] mode datei

Mit chmod kann die Berechtigungen für Dateien und Verzeichnisse ändern.
Beispiele:

Mit dem nächsten Befehl wird der Datei datei die Rechte rwxr-x--- vergeben. Das heisst der Owner hat Lese- Schreib- und Ausführungsrechte, die Gruppe hat Lese- und Ausführungsrechte und alle Anderen haben für diese Datei gar keine Rechte.

chmod 750 datei

Mit dem nächsten Befehl wird dem Verzeichnis die Rechte rwxr-xr-- vergeben. Das heisst der Owner hat Lese- Schreib- und Ausführungsrechte, die Gruppe hat Lese- und Ausführungsrechte und alle Anderen haben für dieses Verzeichnis nur Leserechte (Sie können den Inhalt des Verzeichnisses anzeigen mit ls, aber nicht per cd in das Verzeichnis wechseln.)
ACHTUNG: Um in Verzeichnisse wechseln zu können ist das executable (x) nötig!

chmod 754 verzeichnis

Mit dem nächsten Befehl wird dem Ordner die Rechte r-xr-x--x rekursiv (auch mit Unterordnern) vergeben, wobei die executable (x) Rechte NICHT für Dateien gelten. Das macht man mit einem grossen X. Wenn es mit einem kleinen x geschrieben wird, gelten die Berechtigungen auch für Dateien. u = user, g = group, o = other und a = all.

chmod -R ugo+rX Ordner

Entspricht:

chmod -R a+rX Ordner

Entspricht:

chmod -R u+rX,g+rX,o+rX Ordner

chown


Ausführliche Infos: Hier klicken

chown Optionen Username:Gruppe Verzeichnis/Datei

Mit chown kann man für Dateien und Verzeichnisse den Besitzer ändern.
Beispiele:

So wird der Besitzer von /var/www auf [Username] geändert:

chown [Username] /var/www

So wird der Besitzer von /var/www inklusive aller Unterordner (-R = recursive) auf [Username] geändert:

chown -R [Username] /var/www

So wird der Besitzer und die Gruppe von /var/www inklusive aller Unterordner (-R = recursive) auf [Username] [Gruppe] geändert:

chown -R [Username]:[gruppe] /var/www

passwd


Ausführliche Infos: Hier klicken

passwd Optionen

Mit passwd kann man ein gewünschtes Passwort ändern.
Beispiele:

So ändert man sein eigenes Passwort:

passwd

So ändert man users Passwort:

passwd user

So ändert man das Passwort einer gruppe:

passwd -g gruppe

Infos zum Dokument
Author: Christoph Iseli
Datum: 16.07.2013
Letzte Änderung: 07.04.2015

0 Kommentare

Einen neuen Kommentar hinzufügen

Info: Wenn Du eingeloggt bist, musst Du keine Userdaten mehr eingeben.

Ort:
(Optional)

Kommentar:

Impressum
Programmierung: Christoph Iseli | Design: Christoph Iseli
Webseitencode: Darf frei kopiert / verwendet werden (Downloads) | Inhalt: Darf frei verwendet werden, solange ein Link auf diese Seite mitgegeben wird.