Skip to Content
DokumentationErste SchritteErste SchritteBefehlszeilen-Grundlagen

Befehlszeilen-Grundlagen

Für Linux-Neulinge kann die Befehlszeile ungewohnt oder sogar einschüchternd wirken. Aber in Wirklichkeit ist die Befehlszeile das leistungsstärkste und flexibelste Werkzeug in einem Linux-System. Die Beherrschung grundlegender Befehlszeilenvorgänge macht die Systemverwaltung nicht nur effizienter, sondern hilft Ihnen auch zu verstehen, wie Linux unter der Haube funktioniert.

Dieser Artikel führt Sie von Grund auf zum Verständnis der Konzepte von Terminals und Shells, zur Beherrschung der am häufigsten verwendeten Befehle und zum Erlernen von Kernwissen wie Dateipfaden, Pipes und Berechtigungen.

Was sind Terminal und Shell?

Terminal

Ein Terminal ist eine Anwendung, die ein Fenster bereitstellt, in dem Sie durch die Eingabe von Textbefehlen mit dem Computer interagieren können. In der Ubuntu-Desktop-Umgebung ist das Terminal das Fenster mit schwarzem (oder dunklem) Hintergrund, das Sie sehen.

Die Standard-Terminalanwendung in Ubuntu 26.04 ist Ptyxis. Es ersetzt das traditionelle GNOME-Terminal und bietet eine bessere Containerintegration. Bei Bedarf können Sie weiterhin das klassische GNOME-Terminal installieren.

Wenn Sie ein moderneres GPU-beschleunigtes Terminal ausprobieren möchten, ist Ghostty als Vorschaupaket im 26.04-Universum-Repository verfügbar:

sudo apt install ghostty

Ghostty ist nicht das Standardterminal. Auf Geräten ohne OpenGL 4.3-Unterstützung ist möglicherweise ein Software-Rendering-Fallback erforderlich.

Muschel

Eine Shell ist das Programm hinter dem Terminal, das Befehle tatsächlich verarbeitet. Wenn Sie Befehle im Terminal eingeben, werden sie von der Shell analysiert und ausgeführt. Ubuntus Standard-Shell ist Bash (Bourne Again Shell).

Zu den gängigen Muscheln gehören:

MuschelBeschreibung
BashUbuntus Standard-Shell, reich an Funktionen und guter Kompatibilität
ZshEine modernere Shell mit besserer automatischer Vervollständigung und besseren Themen
FischEine benutzerfreundliche Shell mit sofort einsatzbereiter Syntaxhervorhebung
StrichEine leichte Shell, die von Ubuntu für Systemskripts verwendet wird

Sie können Ihre aktuelle Shell mit dem folgenden Befehl überprüfen:

echo $SHELL

Möglichkeiten zum Öffnen des Terminals

In Ubuntu 26.04 gibt es mehrere Möglichkeiten, das Terminal zu öffnen:

Methode 1: Tastaturkürzel

Der schnellste Weg ist das Drücken von Strg + Alt + T, wodurch direkt ein Terminalfenster geöffnet wird.

Methode 2: Über das Anwendungsmenü

  1. Klicken Sie oben links auf die Schaltfläche Aktivitäten (oder drücken Sie die Supertaste).
  2. Geben Sie „Terminal“ in die Suchleiste ein
  3. Klicken Sie auf das Terminalsymbol, um es zu öffnen

Methode 3: Aus dem Dateimanager

Im GNOME-Dateimanager (Nautilus) können Sie mit der rechten Maustaste auf einen leeren Bereich klicken und „Im Terminal öffnen“ auswählen. Das Terminal navigiert automatisch zum aktuellen Verzeichnis.

Methode 4: Virtuelles TTY-Terminal

Drücken Sie Strg + Alt + F3 (F3 bis F6), um zu einem virtuellen Nur-Text-Terminal zu wechseln. Drücken Sie Strg + Alt + F2, um zurück zur grafischen Oberfläche zu wechseln. Dies ist besonders nützlich, wenn die grafische Oberfläche Probleme hat.

Grundlegende Befehle

pwd – Arbeitsverzeichnis drucken

pwd (Arbeitsverzeichnis drucken) zeigt den Pfad Ihres aktuellen Verzeichnisses an:

pwd # Example output: /home/username

ls – Verzeichnisinhalte auflisten

ls (Liste) ist einer der am häufigsten verwendeten Befehle zum Anzeigen von Dateien und Ordnern in einem Verzeichnis:

# List current directory contents ls # Show detailed information (permissions, size, modification time, etc.) ls -l # Show hidden files (files starting with .) ls -a # Combined usage: detailed info + hidden files + human-readable file sizes ls -lah # List contents of a specific directory ls /etc # Sort by modification time (newest first) ls -lt

cd – Verzeichnis wechseln

cd (Verzeichnis ändern) wird zum Wechseln zwischen Verzeichnissen verwendet:

# Enter a specific directory cd /var/log # Go up one level cd .. # Return to the home directory cd ~ # Or simply type cd # Return to the previous directory cd - # Enter a multi-level directory cd /usr/share/doc

mkdir – Verzeichnisse erstellen

# Create a single directory mkdir myproject # Create nested directories (-p auto-creates parent directories) mkdir -p projects/web/frontend # Create multiple directories at once mkdir dir1 dir2 dir3

cp – Dateien und Verzeichnisse kopieren

# Copy a file cp file.txt backup.txt # Copy a file to a specific directory cp file.txt /home/username/Documents/ # Copy an entire directory (requires -r for recursive copy) cp -r myproject myproject-backup # Copy while preserving file attributes (permissions, timestamps, etc.) cp -a source/ destination/

mv – Verschieben oder Umbenennen

# Rename a file mv oldname.txt newname.txt # Move a file to another directory mv file.txt /home/username/Documents/ # Move and rename mv file.txt /home/username/Documents/newname.txt # Move an entire directory mv myproject /opt/

rm – Dateien und Verzeichnisse entfernen

# Remove a file rm file.txt # Remove a directory and its contents (recursive deletion) rm -r myproject # Force removal (no confirmation prompt) rm -f file.txt # Confirm before each deletion rm -i *.txt
Warning

Dateien, die mit rm gelöscht wurden, landen nicht im Papierkorb – sie werden sofort dauerhaft gelöscht! Insbesondere ein Befehl wie rm -rf / zerstört Ihr gesamtes System. Stellen Sie vor der Verwendung von rm immer sicher, dass Sie die richtigen Dateien löschen. Anfänger sollten zunächst mit ls prüfen, welche Dateien übereinstimmen, und erst nach Bestätigung löschen.

cat – Dateiinhalte anzeigen

# View the complete contents of a file cat file.txt # Display line numbers cat -n file.txt # Concatenate multiple files cat file1.txt file2.txt # Create a new file (Ctrl+D to finish input) cat > newfile.txt

weniger – Seitenansicht

Wenn der Dateiinhalt sehr lang ist, ist less besser geeignet als cat:

less /var/log/syslog

Allgemeine Vorgänge in less:

  • Leerzeichen: Nächste Seite
  • b: Vorherige Seite
  • g: Zum Anfang der Datei springen
  • G: Zum Ende der Datei springen
  • /keyword: Suchen
  • n: Nächstes Suchergebnis
  • q: Beenden

head and tail – Anfang und Ende von Dateien anzeigen

# View the first 10 lines (default) head file.txt # View the first 20 lines head -n 20 file.txt # View the last 10 lines tail file.txt # View the last 50 lines tail -n 50 file.txt # Follow file changes in real time (commonly used for viewing logs) tail -f /var/log/syslog

Dateipfade

Das Verständnis der Dateipfade ist für die Verwendung der Befehlszeile von grundlegender Bedeutung. Das Linux-Dateisystem beginnt bei / (dem Stammverzeichnis) und alle Dateien und Verzeichnisse sind in dieser Baumstruktur organisiert.

Absolute vs. relative Pfade

Absolute Pfade beginnen im Stammverzeichnis / und geben den vollständigen Speicherort einer Datei an:

# Absolute path examples /home/username/Documents/file.txt /etc/nginx/nginx.conf /var/log/syslog

Relative Pfade werden aus dem aktuellen Verzeichnis berechnet:

# Assuming you are in /home/username # The following two are equivalent: cat /home/username/Documents/file.txt # Absolute path cat Documents/file.txt # Relative path

Spezielle Pfadsymbole

SymbolBedeutungBeispiel
/Stammverzeichniscd /
~Das Home-Verzeichnis des aktuellen Benutzerscd ~ ist dasselbe wie cd /home/username
.Aktuelles Verzeichnis./script.sh führt ein Skript im aktuellen Verzeichnis aus
..Übergeordnetes Verzeichniscd ../.. geht um zwei Ebenen nach oben
-Vorheriges Verzeichnis (nur für CD)cd -
# Practical examples # Return to the home directory from anywhere cd ~ # View the contents of the parent directory ls .. # Run a script in the current directory ./my-script.sh # Copy a file from two levels up to the current directory cp ../../config.txt .

Rohre und Umleitung

Pipes und Umleitung sind äußerst leistungsstarke Funktionen der Befehlszeile. Mit ihnen können Sie mehrere einfache Befehle kombinieren, um komplexe Aufgaben zu erledigen.

Rohre (|)

Eine Pipe übergibt die Ausgabe eines Befehls als Eingabe an einen anderen Befehl:

# View all processes and search for lines containing "nginx" ps aux | grep nginx # List directory contents and display them page by page ls -la /etc | less # Count the number of files in the current directory ls | wc -l # View disk usage, sorted by size du -sh * | sort -h # Multi-level pipe: find errors in logs, deduplicate, and sort cat /var/log/syslog | grep "error" | sort | uniq -c | sort -rn

Ausgabeumleitung (> und >>)

# Write command output to a file (overwrites existing content) echo "Hello, Ubuntu!" > hello.txt # Append command output to the end of a file echo "Another line" >> hello.txt # Save a command listing to a file ls -la > filelist.txt # Redirect error output to a file command 2> errors.log # Redirect both standard output and error output command > output.log 2>&1 # Or the shorter version command &> output.log

Eingabeumleitung <

# Read input from a file wc -l < file.txt # Common usage: import an SQL file into a database mysql -u root -p database_name < backup.sql

Berechtigungsgrundlagen

Linux ist ein Mehrbenutzersystem und die Berechtigungsverwaltung gewährleistet die Systemsicherheit.

sudo – Als Administrator ausführen

sudo (Super User Do) ermöglicht es regulären Benutzern, Befehle mit Administratorrechten (Root) auszuführen:

# Install software sudo apt install vim # Edit a system configuration file sudo nano /etc/hosts # Open a shell as root (use with caution) sudo -i # Check sudo privileges sudo -l

Wenn Sie sudo zum ersten Mal verwenden, werden Sie nach Ihrem eigenen Benutzerpasswort gefragt (nicht nach dem Root-Passwort). Das Passwort wird für einen bestimmten Zeitraum gespeichert.

chmod – Dateiberechtigungen ändern

Linux-Dateiberechtigungen sind in drei Gruppen unterteilt: Besitzer (u), Gruppe (g) und andere (o). Jede Gruppe verfügt über die Berechtigungen Lesen (r=4), Schreiben (w=2) und Ausführen (x=1).

# View file permissions ls -l file.txt # Example output: -rw-r--r-- 1 user group 1024 Jan 1 12:00 file.txt # Add execute permission to a file chmod +x script.sh # Set exact permissions (owner: rwx, group: rx, others: rx) chmod 755 script.sh # Common permission combinations chmod 644 file.txt # Owner read/write, others read-only chmod 600 secret.key # Owner read/write only chmod 777 shared.txt # Full permissions for everyone (not recommended) # Recursively modify directory permissions chmod -R 755 /var/www/html

Allgemeine Tastaturkürzel

Das Beherrschen von Tastaturkürzeln kann die Effizienz Ihrer Befehlszeile erheblich verbessern:

AbkürzungFunktion
TabulatortasteAutovervollständigungsbefehle, Dateinamen, Verzeichnisnamen
Tab TabAlle möglichen Abschlussoptionen anzeigen
Strg + CUnterbrechen Sie den aktuell ausgeführten Befehl
Strg + DBeenden Sie die aktuelle Shell (entspricht der Eingabe von exit).
Strg + RRückwärtssuche im Befehlsverlauf
Strg + LBildschirm löschen (entspricht dem Befehl clear)
Strg + ABewegen Sie den Cursor an den Anfang der Zeile
Strg + EBewegen Sie den Cursor an das Ende der Zeile
Strg + WLöschen Sie das Wort vor dem Cursor
Strg + UVom Cursor bis zum Zeilenanfang löschen
Strg + KVom Cursor bis zum Ende der Zeile löschen
Aufwärts-/AbwärtspfeileDurchsuchen Sie den Befehlsverlauf
!!Führen Sie den letzten Befehl erneut aus
!$Verweisen Sie auf das letzte Argument des vorherigen Befehls
# Tab completion example cd /etc/ng[Tab] # Auto-completes to cd /etc/nginx/ # Typical usage of !!: forgot to add sudo apt install vim # Permission error, then: sudo !! # Equivalent to sudo apt install vim # Ctrl+R search history # Press Ctrl+R, type "docker", and the most recent command containing "docker" will appear

Hilfe bekommen

Unter Linux gibt es viele Möglichkeiten, Hilfe zu erhalten:

Mann - Handbuchseiten

man (Handbuch) ist die maßgeblichste Befehlsdokumentation:

# View the manual for the ls command man ls # Search manuals (by keyword) man -k "copy file" # View a specific section of the manual man 5 crontab # View the crontab file format (section 5)

Das Flag —help

Die meisten Befehle unterstützen das Flag --help, das eine kurze Zusammenfassung der Verwendung anzeigt:

ls --help cp --help systemctl --help

tldr – Vereinfachtes Handbuch

tldr (Too Long; Didn’t Read) bietet prägnante, praktische Befehlsbeispiele, perfekt für Anfänger:

# Install tldr sudo apt install tldr # Update the database tldr --update # View command usage tldr tar tldr rsync tldr systemctl

Weitere Hilferessourcen

# View a brief description of a command whatis ls # Find the path of a command which python3 whereis nginx # Check the command type (built-in, external, alias, etc.) type cd type ls

Grundlegender Befehls-Spickzettel für Anfänger

Tip

Hier sind die 20 am häufigsten verwendeten Befehle für Anfänger. Setzen Sie ein Lesezeichen als Referenz! Sie müssen sie nicht alle auf einmal auswendig lernen – schlagen Sie sie bei Bedarf einfach nach, dann werden sie Ihnen mit der Zeit in Fleisch und Blut übergehen.

BefehlZweckAllgemeines Beispiel
pwdAktuelles Verzeichnis anzeigenpwd
lsVerzeichnisinhalte auflistenls -lah
cdVerzeichnis wechselncd /var/log
mkdirVerzeichnisse erstellenmkdir -p a/b/c
cpDateien/Verzeichnisse kopierencp -r src/ dst/
mvVerschieben/umbenennenmv old.txt new.txt
rmDateien/Verzeichnisse entfernenrm -r dirname
catDateiinhalt anzeigencat file.txt
lessDateien Seite für Seite anzeigenless /var/log/syslog
head/tailAnfang/Ende der Dateien anzeigentail -f log.txt
grepSuchtextgrep "error" log.txt
findDateien suchenfind / -name "*.conf"
sudoMit Administratorrechten ausführensudo apt update
aptPaketmanagersudo apt install vim
chmodBerechtigungen ändernchmod +x script.sh
nano/vimTexteditorennano file.txt
dfFestplattennutzung prüfendf -h
top/htopProzesse anzeigenhtop
systemctlSystemdienste verwaltensystemctl status nginx
historyBefehlsverlauf anzeigenhistory | grep ssh

Erweiterte Tipps

Befehlsaliase

Sie können kurze Aliase für häufig verwendete Befehle erstellen:

# Temporary alias (only valid for the current session) alias ll='ls -lah' alias gs='git status' # Permanent alias (written to ~/.bashrc) echo "alias ll='ls -lah'" >> ~/.bashrc echo "alias update='sudo apt update && sudo apt upgrade -y'" >> ~/.bashrc # Apply aliases immediately source ~/.bashrc

Befehlsverlauf

# View command history history # Search command history history | grep "apt install" # Execute command #42 from history !42 # Clear history history -c

Platzhalter

# * matches any characters ls *.txt # All .txt files cp *.jpg photos/ # Copy all .jpg files # ? matches a single character ls file?.txt # Matches file1.txt, fileA.txt, etc. # [] matches a specified range ls file[1-3].txt # Matches file1.txt, file2.txt, file3.txt

Nachdem Sie diese Grundlagen erlernt haben, können Sie bereits die meisten alltäglichen Vorgänge in der Ubuntu-Befehlszeile erledigen. Sie können weiterführende Themen wie Shell-Scripting, Systemadministration, Netzwerkkonfiguration und mehr erlernen. Denken Sie daran: Übung macht den Meister – praktische Erfahrung ist der beste Weg, die Befehlszeile zu beherrschen.