Vi / VIM Znajdź i zamień całe polecenie zastępowania tekstu

Jestem nowym użytkownikiem Linuksa. Zacząłem używać edytora tekstu vim lub vi. Jak znaleźć wszystkie wystąpienia słowa „eth0” i zastąpić je słowem „br0” w systemach operacyjnych Linux?

Szczegóły samouczka
Trudność Łatwe (rss)
Uprawnienia rootowania Nie
Wymagania vim
Czas 1m

Zarówno edytor tekstu vi, jak i vim zapewniają polecenie zastępowania. Służy do znajdowania / wyszukiwania i zamiany tekstu. Ta strona wyjaśnia, jak używać polecenia zastępowania do znajdowania i zastępowania tekstu przez vim / vi.

VIM Składnia wyszukiwania i zamiany

VIM Znajdź i zamień

Zarówno vi, jak i vim zapewniają polecenie: s do wyszukiwania i zamiany. Zobaczmy kilka łatwych do zrozumienia przykładów.

Przykłady

Użyję następującego przykładowego pliku tekstowego:

Aby znaleźć każde wystąpienie „eth0” tylko w bieżącym wierszu i zamień go na „br0”, wprowadź (najpierw naciśnij klawisz Esc i wpisz):
:s/eth0/br0/g

Następnie spróbuj znaleźć i zamień wszystkie wystąpienia „eth1” na „br1” w obszarze vim, wprowadź:
:%s/eth1/br1/g

Wyszukaj i zamień wszystkie wystąpienia „eth1” na „ br1 ', ale najpierw poproś o potwierdzenie w vimie, wpisz:
:%s/eth1/br1/gc

Aby znaleźć i zamienić wszystkie wystąpienia „eth1” bez rozróżniania wielkości liter na „br1” ', wpisz:
:%s/eth1/br1/gi
W powyższym przykładzie znajdziesz eth1, ETH1, eTh1, ETh1 itd. i zastąp je br1. Aby znaleźć i zamienić wszystkie wystąpienia „eth1” na „br1” w wierszach od 3 do 7, wprowadź:
:3,7s/eth1/br1/g

Szybkie demo

Animowany gif 01: Vim Znajdź i zamień demo

Zastępcza składnia

Włącz każda linia, usuń wszystkie wystąpienia całego słowa „Sysadmin”

Tak, możemy też usunąć słowa:
:%s/\//g

Jak mogę usunąć pierwsze wystąpienie całego słowa „metoda_” i następujące 3 znaki?

:%s/\.\{3}//

Wyszukaj i zamień bieżące tylko wiersz

Znajdź każde wystąpienie „bin” tylko w bieżącym wierszu i zamień je na „sbin” w wrapper.sh:
:%s/bin/sbin/gc

Podsumowanie

Dowiedziałeś się, jak znaleźć i zamienić tekst w edytorze tekstu vi lub vim za pomocą polecenia zastępowania% s. Wpisz następującą komendę w vimie, aby uzyskać pomoc dotyczącą podmiany tematu lub przejrzyj dokumenty:
:help :substitute

🐧 Wesprzyj moją pracę na Patreonie lub z darowizny.
🐧 Pobierz najnowsze samouczki na temat Linuksa, oprogramowania Open Source & DevOps przez kanał RSS lub cotygodniowy biuletyn e-mailowy.
🐧 Dotychczas 8 komentarzy … dodaj jeden ↓
Category Lista poleceń dla systemów Unix i Linux
Zarządzanie plikami cat
Firewall Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04
Narzędzia sieciowe dig • host • ip • nmap
OpenVPN CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04
Menedżer pakietów apk • apt
Procesy Zarządzanie bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time
Wyszukiwanie grep • whereis • które
Informacje o użytkowniku grupy • id • lastcomm • last • lid / libuser-lid • logname • członkowie • użytkownicy • whoami • who • w
WireGuard VPN Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04

Write a Comment

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *