Ubuntu-Befehlszeile: Grundlegende Bash-Befehle für Anfänger und fortgeschrittene Benutzer
Die Befehlszeile in Ubuntu — allgemein als Terminal bezeichnet — ist eines der leistungsstärksten Werkzeuge, die Linux-Benutzern zur Verfügung stehen. Ob Sie Dateien verwalten, Software installieren, Systemeinstellungen konfigurieren oder wiederkehrende Aufgaben automatisieren — das Terminal gibt Ihnen direkte, effiziente Kontrolle über Ihr Betriebssystem. Das Herzstück des Ubuntu-Terminals ist Bash, eine robuste Befehlszeilen-Shell, die Ihre Befehle schnell und präzise interpretiert und ausführt.
Dieser umfassende Leitfaden behandelt die wichtigsten und am häufigsten verwendeten Bash-Befehle in Ubuntu und bietet Ihnen eine solide Grundlage für sicheres und effizientes Arbeiten im Terminal — egal ob Sie ein absoluter Anfänger sind oder Ihre vorhandenen Kenntnisse vertiefen möchten.
Was ist Bash?
Bash (kurz für *Bourne Again Shell*) ist die Standard-Befehlszeilen-Shell in Ubuntu und der überwiegenden Mehrheit der Linux-Distributionen. Es handelt sich um eine textbasierte Schnittstelle, die es Benutzern ermöglicht, Befehle direkt an das Betriebssystem zu senden und dabei grafische Oberflächen vollständig zu umgehen — für schnellere und präzisere Kontrolle.
Bash ist außerordentlich leistungsstark und unterstützt eine Vielzahl von Funktionen, darunter:
- Shell-Scripting — automatisieren Sie komplexe Befehlssequenzen
- Befehlsverlauf — zuvor ausgeführte Befehle abrufen und wiederverwenden
- Aliase — Abkürzungen für häufig verwendete Befehle erstellen
- Piping und Umleitung — Befehle für erweiterte Arbeitsabläufe verketten
- Umgebungsvariablen — System- und Anwendungsverhalten dynamisch konfigurieren
So öffnen Sie das Terminal in Ubuntu
Sie können das Ubuntu-Terminal auf zwei Arten öffnen:
- Drücken Sie Ctrl + Alt + T auf Ihrer Tastatur
- Suchen Sie nach "Terminal" im Anwendungsmenü (Aktivitäten oder App-Drawer)
Sobald das Terminal geöffnet ist, können Sie mit der Eingabe von Bash-Befehlen beginnen.
> Profi-Tipp: Wenn Sie einen Remote-Server verwalten — beispielsweise einen VPS Hosting-Plan — greifen Sie in der Regel über SSH auf das Terminal zu, anstatt über eine lokale Desktop-Oberfläche. Dieselben Bash-Befehle gelten in beiden Umgebungen.
Grundlegende Navigationsbefehle
Das effiziente Navigieren im Linux-Dateisystem ist die erste Fähigkeit, die jeder Terminal-Benutzer beherrschen muss. Die folgenden Befehle bilden das Rückgrat der Verzeichnisnavigation in Ubuntu.
1. pwd — Aktuelles Verzeichnis anzeigen
Der Befehl pwd zeigt den vollständigen Pfad des Verzeichnisses an, in dem Sie sich gerade befinden. Dies ist besonders nützlich, wenn Sie sich tief in einer verschachtelten Verzeichnisstruktur befinden und Ihren Standort bestätigen müssen.
pwdBeispielausgabe:
/home/username/documents/projects2. ls — Verzeichnisinhalt auflisten
Der Befehl ls listet alle Dateien und Verzeichnisse im aktuellen Arbeitsverzeichnis auf. Er ist einer der am häufigsten verwendeten Befehle in Linux.
lsSie können seine Funktionalität mit mehreren nützlichen Optionen erweitern:
| Option | Beschreibung |
|---|---|
ls -l | Langes Format — zeigt Dateiberechtigungen, Eigentümer, Größe und Änderungsdatum an |
ls -a | Alle Dateien anzeigen, einschließlich versteckter Dateien (die mit . beginnen) |
ls -lh | Langes Format mit menschenlesbaren Dateigrößen (KB, MB, GB) |
ls -lt | Dateien nach Änderungszeit sortieren, neueste zuerst |
ls -la | Langes Format mit Anzeige versteckter Dateien kombinieren |
Beispiel:
ls -lah /var/www/html3. cd — Verzeichnis wechseln
Der Befehl cd wird verwendet, um zwischen Verzeichnissen zu navigieren. Er ist wohl der am häufigsten verwendete Befehl in jeder Linux-Terminal-Sitzung.
cd /path/to/directoryHäufige Abkürzungen:
cd # Navigate to your home directory
cd ~ # Also navigates to your home directory
cd .. # Move up one directory level
cd - # Return to the previous directory
cd / # Navigate to the root directory4. mkdir — Verzeichnis erstellen
Der Befehl mkdir erstellt ein neues Verzeichnis am angegebenen Pfad.
mkdir new_directoryUm verschachtelte Verzeichnisse mit einem einzigen Befehl zu erstellen, verwenden Sie das Flag -p:
mkdir -p /home/username/projects/website/assetsDadurch werden alle Zwischenverzeichnisse automatisch erstellt, auch wenn sie noch nicht existieren.
5. rmdir — Leeres Verzeichnis entfernen
Der Befehl rmdir entfernt ein leeres Verzeichnis. Wenn das Verzeichnis Dateien oder Unterverzeichnisse enthält, wird ein Fehler zurückgegeben.
rmdir directory_nameUm ein Verzeichnis zusammen mit seinem gesamten Inhalt zu entfernen, verwenden Sie den Befehl rm mit dem rekursiven Flag (im nächsten Abschnitt behandelt):
rm -r directory_name> Warnung: Der Befehl rm -r löscht Dateien und Verzeichnisse dauerhaft. Es gibt keine Papierkorb- oder Wiederherstellungsfunktion. Überprüfen Sie den Pfad immer sorgfältig, bevor Sie ihn ausführen.
Dateiverwaltungsbefehle
Die Verwaltung von Dateien ist eine Kernaufgabe bei der Arbeit auf jedem Linux-System — vom persönlichen Desktop bis hin zu einem produktiven Dedicated Server. Die folgenden Befehle decken das Erstellen, Kopieren, Verschieben und Löschen von Dateien ab.
1. touch — Neue Datei erstellen
Der Befehl touch erstellt eine neue, leere Datei. Wenn die Datei bereits existiert, aktualisiert er lediglich die Zugriffs- und Änderungszeitstempel der Datei, ohne deren Inhalt zu verändern.
touch file_name.txtSie können mehrere Dateien gleichzeitig erstellen:
touch file1.txt file2.txt file3.txt2. cp — Dateien und Verzeichnisse kopieren
Der Befehl cp kopiert Dateien oder Verzeichnisse von einem Ort an einen anderen.
cp source_file destinationNützliche Optionen:
| Option | Beschreibung |
|---|---|
cp -r | Ein Verzeichnis und seinen gesamten Inhalt rekursiv kopieren |
cp -i | Vor dem Überschreiben einer vorhandenen Datei nachfragen |
cp -v | Ausführlicher Modus — jede Datei beim Kopieren anzeigen |
cp -u | Nur Dateien kopieren, die neuer als das Ziel sind |
Beispiele:
# Copy a single file
cp config.txt /etc/myapp/config.txt
# Copy an entire directory
cp -r /var/www/html /backup/html_backup3. mv — Dateien verschieben oder umbenennen
Der Befehl mv dient einem doppelten Zweck: Er verschiebt Dateien oder Verzeichnisse an einen neuen Speicherort und benennt sie um.
Eine Datei in ein neues Verzeichnis verschieben:
mv file_name.txt /new/directory/Eine Datei umbenennen:
mv old_name.txt new_name.txtGleichzeitig verschieben und umbenennen:
mv /home/user/old_name.txt /var/www/html/new_name.txt4. rm — Dateien und Verzeichnisse entfernen
Der Befehl rm löscht Dateien und Verzeichnisse dauerhaft aus dem Dateisystem.
rm file_name.txtHäufige Optionen:
| Option | Beschreibung |
|---|---|
rm -r | Ein Verzeichnis und seinen gesamten Inhalt rekursiv löschen |
rm -f | Löschen ohne Bestätigungsaufforderung erzwingen |
rm -i | Vor dem Löschen jeder Datei nachfragen |
rm -rf | Rekursives Löschen erzwingen — mit äußerster Vorsicht verwenden |
# Delete a single file
rm old_log.txt
# Delete a directory and all its contents
rm -r /tmp/old_project/> Kritische Warnung: Das Ausführen von rm -rf auf dem falschen Pfad — insbesondere als Root-Benutzer — kann irreversible Systemschäden verursachen. Überprüfen Sie Ihren Befehl immer, bevor Sie die Eingabetaste drücken.
Dateien anzeigen und bearbeiten
Das Ubuntu-Terminal bietet mehrere leistungsstarke Werkzeuge zum Lesen und Bearbeiten von Textdateien direkt im Terminal, ohne jemals einen grafischen Texteditor öffnen zu müssen. Diese Befehle sind unverzichtbar für Systemadministratoren, die Konfigurationsdateien auf Servern verwalten, auf denen Shared Web Hosting-Umgebungen oder dedizierte Infrastruktur betrieben wird.
1. cat — Dateiinhalt anzeigen
Der Befehl cat (kurz für *concatenate*) zeigt den gesamten Inhalt einer Datei direkt im Terminal an.
cat file_name.txtSie können cat auch verwenden, um mehrere Dateien zu kombinieren:
cat file1.txt file2.txt > combined.txtUnd um Zeilennummern neben dem Inhalt anzuzeigen:
cat -n file_name.txt2. less — Dateien seitenweise anzeigen
Der Befehl less ist ideal zum Lesen großer Dateien, da er den Inhalt jeweils einen Bildschirm auf einmal anzeigt, anstatt alles auf einmal auszugeben.
less file_name.txtNavigation innerhalb von less:
| Taste | Aktion |
|---|---|
Space oder f | Eine Seite vorwärts blättern |
b | Eine Seite rückwärts blättern |
Arrow keys | Zeilenweise scrollen |
/search_term | Vorwärts nach einem Begriff suchen |
?search_term | Rückwärts nach einem Begriff suchen |
q | Beenden und zum Terminal zurückkehren |
3. nano — Dateien im Terminal bearbeiten
Der Befehl nano öffnet den Nano-Texteditor direkt im Terminal. Er ist anfängerfreundlich, mit Tastaturkürzeln, die am unteren Bildschirmrand angezeigt werden.
nano file_name.txtWesentliche Nano-Tastaturkürzel:
| Kürzel | Aktion |
|---|---|
Ctrl + O | Datei speichern (schreiben) |
Ctrl + X | Nano beenden |
Ctrl + K | Aktuelle Zeile ausschneiden |
Ctrl + U | Ausgeschnittene Zeile einfügen |
Ctrl + W | In der Datei suchen |
Für fortgeschrittenere Bearbeitung bevorzugen erfahrene Administratoren oft Vim (vim file_name.txt) oder GNU Emacs, obwohl Nano der empfohlene Einstiegspunkt für neue Benutzer ist.
4. head — Anfang einer Datei anzeigen
Der Befehl head zeigt standardmäßig die ersten 10 Zeilen einer Datei an. Dies ist nützlich, um schnell den Anfang von Log-Dateien oder Konfigurationsdateien zu überprüfen.
head file_name.txtUm eine benutzerdefinierte Anzahl von Zeilen anzugeben:
head -n 25 file_name.txt5. tail — Ende einer Datei anzeigen
Der Befehl tail zeigt die letzten 10 Zeilen einer Datei an. Dies ist besonders wertvoll für die Echtzeitüberwachung von Log-Dateien.
tail file_name.txtUm eine Log-Datei in Echtzeit zu verfolgen, während sie aktualisiert wird (äußerst nützlich für die Server-Überwachung):
tail -f /var/log/syslogUm eine benutzerdefinierte Anzahl von Zeilen anzuzeigen:
tail -n 50 /var/log/auth.logWeitere wesentliche Bash-Befehle
Über die oben behandelten Grundlagen hinaus sind die folgenden Befehle für jeden Ubuntu-Benutzer oder Systemadministrator unverzichtbar.
grep — Textmuster suchen
grep "search_term" file_name.txt
grep -r "error" /var/log/ # Recursive search through a directory
grep -i "warning" system.log # Case-insensitive searchfind — Dateien und Verzeichnisse finden
find /home -name "*.txt" # Find all .txt files in /home
find /var/www -type f -name "*.php" # Find all PHP files
find / -size +100M # Find files larger than 100MBchmod — Dateiberechtigungen ändern
chmod 755 script.sh # Owner: read/write/execute; Group/Others: read/execute
chmod +x deploy.sh # Add execute permission for all userschown — Dateieigentümer ändern
chown username:groupname file.txt
chown -R www-data:www-data /var/www/htmlsudo — Befehle als Superuser ausführen
sudo apt update
sudo systemctl restart nginxapt — Paketverwaltung
sudo apt update # Refresh package lists
sudo apt upgrade # Upgrade all installed packages
sudo apt install package_name # Install a new package
sudo apt remove package_name # Remove a packageman — Auf Handbuchseiten zugreifen
man ls # View the manual for the ls command
man grep # View the manual for grepBash-Befehlsverkettung und Umleitung
Eine der leistungsstärksten Funktionen von Bash ist die Möglichkeit, Befehle zu verketten und Eingaben/Ausgaben umzuleiten.
Piping (|)
Der Pipe-Operator sendet die Ausgabe eines Befehls als Eingabe an einen anderen:
ls -la | grep ".txt" # List only .txt files
cat access.log | grep "404" # Find all 404 errors in a log
ps aux | grep nginx # Check if nginx is runningAusgabeumleitung (> und >>)
echo "Hello World" > output.txt # Write to file (overwrites)
echo "New line" >> output.txt # Append to file
ls -la > directory_listing.txt # Save directory listing to fileEingabeumleitung (<)
sort < unsorted_list.txt # Sort contents of a filePraktische Anwendungsfälle: Bash-Befehle in der Serververwaltung
Das Verständnis von Bash-Befehlen ist nicht nur für die lokale Desktop-Nutzung nützlich — es ist absolut unverzichtbar für die Verwaltung von Remote-Servern. Ob Sie einen Webserver konfigurieren, eine Anwendung bereitstellen oder Leistungsprobleme beheben — das Terminal ist Ihr primäres Werkzeug.
Hier sind einige reale Szenarien, in denen diese Befehle täglich angewendet werden:
- Webserver-Verwaltung: Bearbeiten von Nginx- oder Apache-Konfigurationsdateien mit
nano, Überprüfen von Fehlerprotokollen mittail -fund Verwalten von Web-Root-Verzeichnissen mitcp,mvundrm - SSL-Zertifikatsinstallation: Navigieren zu Zertifikatsverzeichnissen, Überprüfen von Dateiberechtigungen mit
ls -lund Bearbeiten von Konfigurationsdateien — alles kritische Schritte bei der Einrichtung von SSL Certificates auf Ihrem Server - Datenbankadministration: Verwenden von
grepzum Durchsuchen von Abfrageprotokollen,findzum Auffinden von Datenbankdateien undchmodzum Sichern sensibler Konfigurationsdateien - Automatisierte Backups: Schreiben von Bash-Skripten, die
cp,tarundfindkombinieren, um geplante Backups kritischer Daten zu erstellen - E-Mail-Server-Konfiguration: Verwalten von Konfigurationsdateien und Log-Überwachung für Email Hosting-Setups mit
cat,lessundtail
Kurzreferenz: Spickzettel für wesentliche Bash-Befehle
| Befehl | Zweck | Beispiel |
|---|---|---|
pwd | Aktuelles Verzeichnis anzeigen | pwd |
ls | Verzeichnisinhalt auflisten | ls -lah |
cd | Verzeichnis wechseln | cd /var/www |
mkdir | Verzeichnis erstellen | mkdir -p /new/dir |
rmdir | Leeres Verzeichnis entfernen | rmdir old_dir |
touch | Leere Datei erstellen | touch index.html |
cp | Dateien/Verzeichnisse kopieren | cp -r src/ dest/ |
mv | Verschieben oder umbenennen | mv old.txt new.txt |
rm | Dateien/Verzeichnisse löschen | rm -rf /tmp/cache |
cat | Dateiinhalt anzeigen | cat config.txt |
less | Große Dateien seitenweise durchblättern | less access.log |
nano | Dateien im Terminal bearbeiten | nano nginx.conf |
head | Erste N Zeilen anzeigen | head -n 20 log.txt |
tail | Letzte N Zeilen anzeigen / live verfolgen | tail -f syslog |
grep | Textmuster suchen | grep "error" log.txt |
find | Dateien finden | find / -name "*.conf" |
chmod | Berechtigungen ändern | chmod 755 script.sh |
sudo | Als Superuser ausführen | sudo apt update |
man | Befehlshandbuch anzeigen | man grep |
Fazit
Die Beherrschung von Bash-Befehlen ist eine der wertvollsten Fähigkeiten, die Sie als Linux-Benutzer, Entwickler oder Systemadministrator entwickeln können. Die in diesem Leitfaden behandelten Befehle — von der grundlegenden Navigation mit pwd, ls und cd, über die Dateiverwaltung mit cp, mv und rm, bis hin zum Anzeigen und Bearbeiten von Dateien mit cat, less, nano, head und tail — bilden das wesentliche Werkzeugset für effektives Arbeiten im Ubuntu-Terminal.
Je vertrauter Sie mit diesen Grundlagen werden, desto natürlicher werden Sie zu fortgeschritteneren Themen wie Shell-Scripting, Prozessverwaltung, Netzwerkdiagnose und Systemüberwachung übergehen — alles baut direkt auf dem hier etablierten Fundament auf.
Wenn Sie diese Fähigkeiten in einer echten Linux-Umgebung anwenden möchten, bietet AlexHost leistungsstarkes VPS Hosting mit vollem Root-SSH-Zugang, der Ihnen vollständige Kontrolle über Ihren Server über die Befehlszeile gibt. Unsere Infrastruktur ist auf Zuverlässigkeit, Geschwindigkeit und Flexibilität ausgelegt — ob Sie ein persönliches Projekt, eine Geschäftsanwendung oder eine komplexe Multi-Server-Architektur hosten.
Beginnen Sie noch heute, die Leistungsfähigkeit der Ubuntu-Befehlszeile zu erkunden — und übernehmen Sie die vollständige Kontrolle über Ihre Linux-Umgebung.
