Mit den Tipps und Workshops im ADMIN-Magazin 03/2013 sichern Administratoren ihre Webserver und Netze gegen Angriffe ab: gegen Abhören sensibler Informationen, ... (mehr)

Markierungen

Wenn Sie die grafische Hervorhebung praktisch finden, wollen Sie vielleicht manche ihrer Suchergebnisse dauerhaft markieren. Das können Sie tun, indem Sie »mKleinbuchstabe« eingeben. Die Marke besteht dann aus einem Buchstaben zwischen a und z. Ist eine Markierung gesetzt, springen Sie mit »'Buchstabe« dorthin. Zusätzlich zu ihrer Verwendung als Ziel für Sprünge können Sie die Marken auch für Textblocks verwenden, also etwa um Text von der aktuellen Cursor-Position bis zur Marke zu löschen. Ein Nachteil der Marker ist, dass sie nicht sichtbar sind. Sie müssen sich also selbst merken, wo Sie Markierungen gesetzt haben.

Alle diese Kürzel zu lernen, braucht seine Zeit. Der Vim-Editor hilft dabei, indem er eine History der gefundenen Wörter (nicht der Suchbegriffe) führt. Um ein schon einmal gefundenes Wort noch einmal zu suchen, tippen Sie [/] beziehungsweise [?] und verwenden dann die Pfeiltasten, um durch die History zu scrollen.

Suchen und Ersetzen

Wie schon erwähnt, ist Suchen und Ersetzen in Vim eine vom Suchen vollkommen getrennte Funktion. Grundsätzlich sieht der Befehl für eine Ersetzung so aus:

%s/Suchbegriff/Ersetzung/g

Das Prozentzeichen zu Beginn zeigt an, dass sich der Befehl auf die ganze Datei bezieht. Das »g« am Ende steht für "global" und bedeutet, dass Vim den String auch ersetzt, wenn er in einer Zeile mehrmals vorkommt. In der Praxis werden meist diese beiden Optionen verwendet.

Den Grundbefehl können Sie auf mehrfache Weise variieren. Lassen Sie das Prozentzeichen weg, sucht Vim nur in der aktuellen Zeile. Ersetzen Sie es durch einen Bereich, etwa »4,6,« , sucht Vim nur in den Zeilen 4 bis 6:

:4,6s/Vim/Foom/

Analog dazu führt Vim die Ersetzung mit »'d,'g« nur zwischen den Markierungen »d« und »g« aus. Alternativ ist auch die Angabe einer relativen Position möglich. So ersetzt Vim mit »./$« gefundene Strings in allen Zeilen von der aktuellen bis zur letzten; »./+N« macht das gleiche für die folgenden N Zeilen. Mit »g/^String/« ersetzt Vim das Suchmuster nur in Zeilen, die mit dem angegebenen String beginnen.

Neben »g« gibt es auch noch weitere Optionen, die als Modifikatoren hinter dem Ersetzungsstring folgen dürfen. Dies sind »i« (ignoriere Groß-/Kleinschreibung), »l« (achte Groß-/Kleinschreibung) und »c« (bestätige Ersetzung). Im letzten Fall fragt der Editor bei jedem Fund nach, was er machen soll (siehe Tabelle 1).

Tabelle 1

Bestätigung beim Suchen & Ersetzen

Eingabe

Funktion

y

Ersetze String

n

Überspringen

a

Ersetze alle Folgenden

q

Suchen & Ersetzen beenden

l

Diesen String ersetzen, dann beenden

^E

Mit [Strg]+[e] hochscrollen

^Y

Mit [Strg]+[y] herunterscrollen

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019