Drei Editoren, drei Welten
ÜberblickIn der Unix-Welt gibt es einen heiligen Krieg, der seit den 1980ern tobt: vi gegen emacs. Beide Lager sind überzeugt, dass ihre Wahl die einzig richtige ist. Heute kommt ein dritter, friedlicher Editor dazu: nano. Wir schauen alle drei kurz an.
| Editor | Erschienen | Philosophie | Lernkurve |
|---|---|---|---|
| nano | 1999 | „Einfach, freundlich, alle Tastenkürzel unten sichtbar.“ | 0 — sofort nutzbar |
| vi / vim | vi 1976, vim 1991 | „Editieren mit minimaler Hand-Bewegung. Modus-basiert.“ | steil, aber lohnenswert |
| emacs | 1976 | „Editor + Mailclient + Browser + Terminal + Lebensphilosophie.“ | kein Ende |
Wann welchen?
- nano — wenn du jetzt schnell eine Config-Datei ändern willst. Standardwahl im Admin-Alltag.
- vim — wenn du Linux ernsthaft betreibst. Auf jedem Server vorinstalliert. Ohne Maus extrem schnell. Pflicht-Skill für Senior-Admins.
- emacs — Lifestyle-Entscheidung. Großartig, wenn man bereit ist, Wochen zu investieren. Selten zwingend nötig.
Heute lernen wir nano gründlich und vi/vim grundlegend. Ziel: nano blind beherrschen, vi/vim genug, um nicht panisch zu werden, wenn du auf einem System landest, wo nano fehlt.
nano — der freundliche Editor
Pflichtnano war ursprünglich ein Klon des pico-Editors (Teil des Mail-Clients Pine). Heute ist nano der „Default für Einsteiger“ auf den meisten Distros — bei Debian/Ubuntu bereits vorinstalliert, bei Rocky Minimal muss man ihn nachholen.
Installieren (falls nicht da)
sudo dnf install nano -y
Starten und Aussehen
# Neue Datei anlegen oder existierende öffnen
nano notizen.txt
# Mit Sprung zu Zeile 42
nano +42 datei.txt
# Read-only öffnen
nano -v /etc/passwd
Du landest sofort im Edit-Modus — du kannst tippen wie in einem normalen Editor. Am unteren Rand siehst du immer die wichtigsten Tastenkürzel:
Die wichtigen Tastenkürzel stehen immer unten. Du musst
nichts auswendig lernen. Wer einmal die Konvention ^ = Strg
verstanden hat, kommt sofort klar.
Wichtigste Tastenkürzel
| Tastenkürzel | Funktion |
|---|---|
Strg + O | Speichern (Output / WriteOut) — dann Dateiname mit Enter bestätigen |
Strg + X | Beenden (mit Nachfrage, ob speichern) |
Strg + W | Suchen (Where Is) |
Strg + \ | Suchen und Ersetzen |
Strg + K | Aktuelle Zeile ausschneiden (in Buffer) |
Strg + U | Buffer einfügen (Uncut) |
Strg + G | Hilfe-Seite öffnen |
Strg + C | Aktuelle Cursor-Position anzeigen |
Strg + _ | Zu bestimmter Zeile/Spalte springen |
Alt + U | Rückgängig (Undo) — nicht überall verfügbar |
Alt + E | Wiederherstellen (Redo) |
Alt + A | Marken/Block-Modus starten |
Mini-Demo zum Mitmachen
nano hallo.txt
# Tipp rein:
# Hallo Linux-Welt!
# Heute lerne ich nano.
#
# Strg+O → Enter (speichern)
# Strg+X (beenden)
cat hallo.txt
vi / vim — der Profi-Editor
Survivalvi (gesprochen „wie-aih“ oder „wi“) wurde 1976 von Bill Joy für BSD geschrieben.
vim (vi improved) ist die modernere Version mit
Syntax-Highlighting, Undo, Plugins. Auf Rocky steht vi meist als
Symlink auf vim.
Das Besondere an vim: er hat Modi. Eine Taste macht je nach Modus völlig unterschiedliche Dinge. Wer das nicht weiß, ist sofort verloren.
Die drei wichtigen Modi
Modus-Wechsel
| Aus / Nach | Taste | Was passiert? |
|---|---|---|
| Normal → Insert | i | Insert vor dem Cursor |
| Normal → Insert | a | Append nach dem Cursor |
| Normal → Insert | o | neue Zeile darunter + Insert |
| Normal → Insert | O | neue Zeile darüber + Insert |
| Insert → Normal | Esc | Tippen beenden, zurück zu Befehlen |
| Normal → Visual | v | Auswahl per Zeichen |
| Normal → Visual | V | Auswahl per Zeile |
| Normal → Command | : | Befehlszeile öffnen |
Bewegen im Normal-Modus
Pfeiltasten funktionieren — aber Profis nutzen die Buchstaben
h j k l. Erklärung kommt gleich.
h | links |
j | runter |
k | hoch |
l | rechts |
w | ein Wort vorwärts |
b | ein Wort rückwärts |
0 (Null) | Zeilenanfang |
$ | Zeilenende |
gg | Anfang der Datei |
G | Ende der Datei |
42G oder :42 | zu Zeile 42 |
/text | vorwärts nach text suchen |
n / N | nächster / vorheriger Treffer |
Speichern und Beenden
Im Command-Modus (also : drücken):
:w | Datei speichern (write) |
:q | beenden (quit) — nur wenn keine Änderungen |
:wq | speichern und beenden |
:x | wie :wq, speichert aber nur bei Änderungen |
:q! | beenden OHNE Speichern — Änderungen verwerfen |
:w neuername | unter anderem Namen speichern |
Bearbeiten im Normal-Modus
x | Zeichen unter Cursor löschen |
dd | aktuelle Zeile löschen (delete) |
yy | aktuelle Zeile kopieren (yank) |
p | einfügen (put) |
u | Undo |
Strg + r | Redo |
rx | Zeichen unter Cursor durch x ersetzen |
R | Replace-Modus (überschreibt beim Tippen) |
Bill Joy entwickelte vi 1976 auf einem ADM-3A Terminal. Diese Tastatur hatte keine eigenen Pfeiltasten — stattdessen waren die Pfeile aufgedruckt auf den Tasten h, j, k, l.
Heute ein Anachronismus, aber die Erinnerung
bleibt: j hat im englischen Layout einen kleinen Haken nach
unten — passend, weil j „runter“ bedeutet. Profis nutzen hjkl, weil die Finger
nie die Home-Row verlassen müssen — das macht vim mit Übung schneller
als jeden anderen Editor.
Auch interessant: Auf dem ADM-3A
war zusätzlich das ~ auf der gleichen Taste wie das Home-Symbol
— deshalb steht ~ in Unix bis heute für das Home-Verzeichnis.
Erste vim-Session — minimaler Überlebenstest
# vim öffnen
vim test.txt
# Du bist im NORMAL-Modus
# 1. Taste "i" drücken → INSERT-Modus
# 2. Tippe ein paar Zeilen
# 3. ESC → zurück zu NORMAL
# 4. ":wq" tippen → speichern und beenden
cat test.txt
Das berühmteste Anfänger-Erlebnis: du landest versehentlich in vim und kommst nicht mehr raus. Drei Schritte:
- Esc drücken — zurück in den Normal-Modus.
:q!tippen — beenden ohne Speichern.- Enter. Fertig.
Diese drei Schritte sind die wichtigste vim-Lektion: Esc, :q!, Enter. Lerne sie auswendig.
vimtutor — das eingebaute Tutorial
vim bringt seinen eigenen Lehrgang mit. Ungefähr 30 Minuten und du kannst deutlich mehr als die meisten Linux-User:
# Auf Rocky vorinstalliert, sonst:
sudo dnf install vim-enhanced -y
vimtutor
emacs — der dritte im Bunde (kurz angerissen)
Bonusemacs wurde 1976 von Richard Stallman (ja, dem aus Kapitel 02) entwickelt. Er ist nicht nur ein Editor — emacs ist eine Lisp-basierte Plattform, in der man E-Mail liest, Code kompiliert, Kalender führt, IRC chattet und programmiert.
Die Tastenkürzel sind „Strg-irgendwas“-lastig:
Strg + x dann Strg + s | Speichern |
Strg + x dann Strg + c | Beenden |
Strg + x dann Strg + f | Datei öffnen |
Strg + g | Aktion abbrechen |
… du sowieso programmieren willst und eine voll-anpassbare Umgebung schätzt. Wer aber „nur“ Linux administrieren möchte, kommt mit nano + vim ein ganzes Leben aus. emacs ist eine Reise, kein Wochenend-Lernprojekt.
„Du sollst heute eine kleine Webserver-Konfiguration für HanovaTech anlegen und pflegen. Dabei wirst du nano produktiv nutzen und einmal kurz vim ausprobieren. Wenn du fertig bist: zeig mir die fertige Struktur.“
- Wechsle in dein Home und lege die folgende Struktur in einem
mkdir -p-Aufruf an:~/hanovatech/ ├── configs/ ├── logs/ └── docs/ - In
configs/nano öffnen und die Dateiwebserver.confmit folgendem Inhalt anlegen:conf# HanovaTech Webserver Konfiguration # Stand: 2026-05-21 # Verantwortlich: admin Hostname: web01.hanovatech.local Port: 80 DocRoot: /var/www/hanovatech LogLevel: warn - Mit Strg+O speichern, Strg+X beenden. Inhalt mit
catprüfen.
# 1) Struktur
cd ~
mkdir -p hanovatech/{configs,logs,docs}
ls -R hanovatech/
# 2) Datei mit nano anlegen
cd hanovatech/configs/
nano webserver.conf
# Inhalt einfügen — Strg+O Enter Strg+X
# 3) Inhalt prüfen
cat webserver.conf
- Öffne
webserver.confwieder mit nano. - Ändere den Port von
80auf8080. - Suche mit Strg+W nach
LogLevelund ändere den Wert aufinfo. - Füge am Ende der Datei eine neue Zeile hinzu:
MaxClients: 200. - Speichern und beenden. Inhalt mit cat prüfen.
nano ist intuitiv — keine spezielle Befehlsfolge, du editierst wie in einem normalen Editor. Wichtig:
- Strg+W → „LogLevel“ tippen → Enter → springt zur Stelle
- Zur letzten Zeile: Strg+End oder einfach mit Pfeil-runter
- Strg+O → Enter (speichern) → Strg+X (beenden)
cat webserver.conf bestätigt die Änderungen.
- In
~/hanovatech/docs/öffne mit vim eine neue DateiREADME.md. - Wechsle mit
iin den Insert-Modus und schreibe folgenden Text:markdown# HanovaTech Webserver Dieses Repository enthält die Konfiguration unseres HanovaTech-Webservers. ## Struktur - configs/ Konfigurationsdateien - logs/ Logfiles - docs/ Dokumentation - Drücke Esc, dann tippe
:wq+ Enter — Datei wird gespeichert und vim beendet. - Öffne die Datei nochmal mit vim. Springe mit
ggan den Anfang, mitGans Ende. - Lösche mit
ddeine Zeile und mache es miturückgängig. - Beende vim mit
:q(ohne Änderungen) oder:q!(mit Verwerfen).
# 9) vim öffnen
cd ~/hanovatech/docs/
vim README.md
# 10) i → INSERT, Text tippen
# 11) Esc → :wq → Enter
# 12) gg → an den Anfang
# G → ans Ende
# 13) dd → Zeile löschen
# u → undo
# 14) :q → beenden (wenn nichts geändert)
# :q! → beenden mit Verwerfen
- Öffne
webserver.confnochmal mit nano. - Nutze Strg+\ (Suchen und Ersetzen): ersetze
warndurchdebug. Antworte auf die Nachfragen sinnvoll. - Speichere und beende.
- Kopiere
webserver.confnachwebserver.conf.bak(Backup). - Lege mit nano in
docs/eine DateiCHANGELOG.mdmit einem Eintrag an: "2026-05-21 — Initial Setup durch admin".
# 15-17) nano + Replace
cd ~/hanovatech/configs/
nano webserver.conf
# Strg+\ → "warn" → Enter → "debug" → Enter
# Bei Nachfrage "A" für "All"
# Strg+O Enter Strg+X
# 18) Backup
cp webserver.conf webserver.conf.bak
# 19) CHANGELOG
nano ~/hanovatech/docs/CHANGELOG.md
# Inhalt: 2026-05-21 - Initial Setup durch admin
# Strg+O Enter Strg+X
- Öffne
webserver.confnun mit vim (statt nano). Ändere mit dem vim-Befehl:%s/8080/8443/galle Vorkommen von 8080 auf 8443. Speichern mit:wq. - Erkläre einem Kollegen in einem Satz den Unterschied zwischen
:wqund:q!. - Recherchiere und probiere aus: was macht
:set numberin vim?
# 20) Search&Replace in vim
vim webserver.conf
:%s/8080/8443/g " globally ersetzen
:wq " speichern + beenden
# 21) :wq speichert UND beendet.
# :q! verwirft Änderungen UND beendet.
# 22) :set number " zeigt Zeilennummern am linken Rand
# :set nonumber " schaltet sie wieder aus
Wenn du Teil A–D durch hast: du beherrschst nano produktiv und kannst vim überleben. Das reicht für 90 % aller Admin-Aufgaben. Wer den Bonus mitmacht, hat den vi-Drachen besiegt.
Typische Anfänger-Fehler
VorsichtDu tippst :q oder :wq, aber die Zeichen
erscheinen im Text statt am unteren Rand. Du bist noch im Insert-Modus.
Lösung: Esc drücken, dann nochmal versuchen.
vim verhält sich „komisch“, Tasten machen unerwartete Dinge. Faustregel: bei jedem Verwirrungs-Moment einmal Esc drücken. Damit bist du sicher im Normal-Modus.
^ als „caret“ tippennano-Hilfe sagt „^O Speichern“. Manche tippen tatsächlich
ein ^-Zeichen plus O. Falsch! ^
steht für die Strg-Taste. ^O heißt:
Strg + O.
nano fragt zwar beim Beenden („Save modified buffer?“), aber wer hektisch mit „N“ antwortet, verliert seine Arbeit. Lösung: angewöhnen, vor dem Beenden Strg+O zu drücken — dann ist gespeichert, und Strg+X läuft ohne Frage durch.
Du hast eine wichtige /etc/...-Datei in nano bearbeitet und
bei Strg+O kommt „Error writing: Permission denied“. Lösung: Datei mit
sudo nano /etc/... öffnen. Workaround in vim mit
:w !sudo tee %.
Kontrollfragen zum Kapitel
Selbst-Check- Welche drei großen Editoren gibt es, und welcher ist Standard für Einsteiger?
- Welche Tasten speichern und beenden in nano?
- Wie heißt das Zeichen
^in nano-Anleitungen? - Was sind die drei wichtigen Modi von vim?
- Wie kommst du in vim aus dem Insert-Modus zurück in den Normal-Modus?
- Welche drei Schritte sichern dich, falls du in vim gefangen bist?
- Wofür stehen
:wqund:q!? - Warum nutzen Profis
h j k lstatt der Pfeiltasten?
- nano (Einsteiger), vi/vim (Profis), emacs (Power-User). nano ist Standard für Einsteiger.
- Strg+O speichert, Strg+X beendet.
^ist die Konvention für die Strg-Taste.^O= Strg + O.- Normal-Modus (Tasten = Befehle), Insert-Modus
(Tippen wie normaler Editor), Visual-Modus (Auswahl).
Plus Command-Modus (mit
:). - Mit der Esc-Taste.
- Esc, dann
:q!tippen, dann Enter. :wq= speichern und beenden.:q!= beenden ohne Speichern (Änderungen verwerfen).- Weil die Finger die Home-Row nicht verlassen müssen — das macht das Editieren mit Übung deutlich schneller als mit Pfeiltasten. Historisch stammt es von einem Terminal ohne Pfeiltasten (ADM-3A).