Übersicht
ex ist der zeilenbasierte Befehlsmodus des Vi-Editors. Er ist äußerst nützlich für die Verarbeitung von Dateiinhalten Zeile für Zeile oder für die Durchführung komplexer Texttransformationen mithilfe von regulären Ausdrücken. Insbesondere ist er ein leistungsfähiges Werkzeug zur automatischen Bearbeitung von Dateien innerhalb von Shell-Skripten.
Hauptmerkmale
- Zeilenbasierte Textbearbeitung
- Optimiert für Skripte und automatisierte Aufgaben
- Leistungsstarke Unterstützung für reguläre Ausdrücke
- Verwendet denselben Befehlssatz wie Vi/Vim
- Unterstützt nicht-interaktiven Modus
Wichtige Optionen
ex führt hauptsächlich Befehle direkt innerhalb von Dateien aus, bietet aber beim Start einige Befehlszeilenoptionen zur Steuerung bestimmter Verhaltensweisen.
Start- und Modusoptionen
Erzeugter Befehl:
Kombinieren Sie die Befehle.
Beschreibung:
`ex` Führen Sie den Befehl aus.
Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.
Anwendungsbeispiele
ex wird hauptsächlich verwendet, um bestimmte Aufgaben innerhalb von Skripten auszuführen oder um vom vi-Editor aus mit dem Befehl `:ex` dorthin zu wechseln.
Datei öffnen und Inhalt ausgeben
ex -s file.txt <<EOF
%p
q!
EOF
Öffnet eine Datei im ex-Modus, gibt alle Zeilen aus und beendet sich dann.
Zeichenkette in Datei ersetzen und speichern
ex -s -c '%s/old_string/new_string/g | wq' file.txt
Ersetzt alle Vorkommen von 'old_string' durch 'new_string' in der Datei file.txt, speichert und beendet sich dann.
Stapelweise Zeichenketten in mehreren Dateien ersetzen
for f in *.txt; do ex -s -c '%s/error/warning/g | wq' "$f"; done
Ersetzt 'error' durch 'warning' in allen .txt-Dateien im aktuellen Verzeichnis.
Bestimmte Zeile löschen
ex -s -c '5d | wq' file.txt
Löscht die 5. Zeile der Datei file.txt und speichert sie.
Tipps & Hinweise
ex eignet sich besser für Skripte oder automatisierte Aufgaben als für die interaktive Nutzung. Es ist hilfreich, einige Tipps für eine effiziente Textverarbeitung zu kennen.
Wichtige Tipps
- Verwenden Sie in nicht-interaktiven Skripten immer die Option `-s` (silent), um unnötige Meldungen zu unterdrücken.
- Die Befehle sind identisch mit denen im Befehlsmodus von `vi`. Mit `:wq` speichern und beenden, mit `:q!` ohne Speichern beenden.
- Reguläre Ausdrücke können ähnlich wie bei `sed` leistungsstark genutzt werden. `%s/muster/ersetzung/g` wird verwendet, um Muster in der gesamten Datei zu ersetzen.
- ex ist Teil des `vi`- oder `vim`-Pakets, das auf den meisten Linux-Systemen standardmäßig installiert ist.
- Sie können mehrere ex-Befehle mit dem Pipe-Symbol (`|`) in einer Zeile verketten.