Ich bin ein neuer Linux-Benutzer. Ich fing an, den Texteditor vim oder vi zu verwenden. Wie finde ich das gesamte Vorkommen des Wortes „eth0“ und ersetze es unter Linux-Betriebssystemen durch „br0“?
| Details zum Lernprogramm | |
|---|---|
| Schwierigkeit | Einfach (rss) | 
| Root-Berechtigungen | Nein | 
| Anforderungen | vim | 
| Zeit | 1m | 
Sowohl der vi als auch der vim Texteditor stellen den Ersatzbefehl bereit. Es wird zum Suchen / Suchen und Ersetzen von Text verwendet. Auf dieser Seite wird erläutert, wie Sie den Ersatzbefehl zum Suchen und Ersetzen von Text durch vim / vi verwenden.
VIM-Syntax suchen und ersetzen
VIM suchen und ersetzen
Sowohl vi als auch vim bieten den Befehl: s zum Suchen und Ersetzen. Lassen Sie uns einige leicht verständliche Beispiele sehen.
Beispiele
Ich werde die folgende Beispieltextdatei verwenden:
 Um jedes Vorkommen von ‚eth0‘ zu finden. Geben Sie in der aktuellen Zeile nur Folgendes ein und ersetzen Sie es durch ‚br0‘. Drücken Sie zuerst die Esc-Taste und geben Sie Folgendes ein: 
 :s/eth0/br0/g 
 Versuchen Sie als Nächstes zu suchen und ersetzen Sie alle Vorkommen von ‚eth1‘ durch ‚br1‘ unter vim. Geben Sie Folgendes ein: 
 :%s/eth1/br1/g 
 Suchen und ersetzen Sie alle Vorkommen von ‚eth1‘ durch ‚ br1 ‚, aber bitten Sie zuerst um Bestätigung bei vim, geben Sie Folgendes ein: 
 :%s/eth1/br1/gc 
 Um alle Vorkommen von Groß- und Kleinschreibung ohne Berücksichtigung von‘ eth1 ‚durch‘ br1 ‚zu finden und zu ersetzen ‚, geben Sie Folgendes ein: 
 :%s/eth1/br1/gi 
 Im obigen Beispiel werden eth1, ETH1, eTh1, ETh1 usw. gefunden und durch br1 ersetzt. Geben Sie Folgendes ein, um alle Vorkommen von ‚eth1‘ für Zeilen von 3 bis 7 zu finden und durch ‚br1‘ zu ersetzen: 
 :3,7s/eth1/br1/g 
Eine kurze Demo
Animiertes GIF 01: Vim Demo suchen und ersetzen
Syntax ersetzen
Ein Löschen Sie in jeder Zeile alle Vorkommen des gesamten Wortes „Sysadmin“
 Ja, wir können auch Wörter löschen: 
 :%s/\//g 
Wie kann ich das erste Vorkommen des gesamten Wortes „method_“ und der folgenden 3 Zeichen löschen?
 :%s/\.\{3}// 
Aktuelle suchen und ersetzen Nur Zeile
 Suchen Sie jedes Vorkommen von ‚bin‘ nur in der aktuellen Zeile und ersetzen Sie es in wrapper.sh durch ’sbin‘: 
 :%s/bin/sbin/gc 
Fazit
 Sie haben gelernt, wie Sie mit dem Ersatzbefehl% s Text finden und durch den Texteditor vi oder vim ersetzen. Geben Sie den folgenden Befehl in vim ein, um Hilfe zum Ersatzthema zu erhalten oder Dokumente anzuzeigen: 
 :help :substitute 
🐧 Holen Sie sich die neuesten Tutorials unter Linux, Open Source & DevOps per RSS-Feed oder wöchentlichem E-Mail-Newsletter.
🐧 8 Kommentare bisher … fügen Sie einen hinzu ↓
| Kategorie | Liste der Unix- und Linux-Befehle | 
|---|---|
| Dateiverwaltung | cat | 
| Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 | 
| Netzwerkdienstprogramme | dig • host • ip • nmap | 
| OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 | 
| Paketmanager | apk • apt | 
| Prozesse Management | bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • Zeit | 
| Suchen | grep • whereis • welche | 
| Benutzerinformationen | Gruppen • id • lastcomm • last • lid / libuser-lid • logname • Mitglieder • Benutzer • whoami • who • w | 
| WireGuard VPN | Alpin • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 | 
