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
🐧 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 |