Jsem nový uživatel systému Linux. Začal jsem používat textový editor vim nebo vi. Jak najdu veškerý výskyt slova zvaného „eth0“ a v operačních systémech Linux ho nahradím výrazem „br0“?
| Podrobnosti výukového programu | |
|---|---|
| Obtížnost | Snadné (rss) | 
| rootovací oprávnění | Ne | 
| Požadavky | vim | 
| Čas | 1m | 
Textový editor vi i vim poskytuje náhradní příkaz. Používá se k hledání / hledání a nahrazování textu. Tato stránka vysvětluje, jak použít náhradní příkaz k vyhledání a nahrazení textu vim / vi.
VIM Hledat a nahradit syntaxi
VIM Najít a nahradit
Jak vi, tak vim poskytuje příkaz: s pro vyhledávání a nahrazování. Podívejme se na několik snadno pochopitelných příkladů.
Příklady
Použiji následující ukázkový textový soubor:
 Chcete-li najít každý výskyt výrazu ‚eth0‘ pouze v aktuálním řádku a nahraďte jej řetězcem „br0“, zadejte (nejprve stiskněte klávesu Esc a zadejte): 
 :s/eth0/br0/g 
 Dále zkuste najít a nahradit všechny výskyty ‚eth1‘ za ‚br1‘ pod vim, zadejte: 
 :%s/eth1/br1/g 
 Vyhledat a nahradit všechny výskyty ‚eth1‘ za ‚ br1 ‚, ale nejprve požádejte o potvrzení na vim, zadejte: 
 :%s/eth1/br1/gc 
 Chcete-li najít a nahradit všechny výskyty necitlivých písmen‘ eth1 ‚za‘ br1 ‚, zadejte: 
 :%s/eth1/br1/gi 
 Výše uvedený příklad najde eth1, ETH1, eTh1, ETh1 atd. a nahradí je br1. Chcete-li najít a nahradit všechny výskyty řetězce „eth1“ řetězcem „br1“ pro řádky od 3 do 7, zadejte: 
 :3,7s/eth1/br1/g 
Rychlá ukázka
Animovaný gif 01: Vim Najít a nahradit ukázku
Nahradit syntaxi
Zapnuto v každém řádku smažte všechny výskyty celého slova „Sysadmin“
 Ano, můžeme smazat i slova: 
 :%s/\//g 
Jak mohu smazat první výskyt celého slova „method_“ a následující 3 znaky?
 :%s/\.\{3}// 
Hledat a nahradit aktuální pouze řádek
 Najít všechny výskyty ‚bin‘ pouze v aktuálním řádku a nahradit je ‚sbin‘ v wrapper.sh: 
 :%s/bin/sbin/gc 
Závěr
 Naučili jste se, jak najít a nahradit text textovým editorem vi nebo vim pomocí příkazu% s substitute. Chcete-li získat pomoc s náhradním tématem nebo zobrazit dokumenty, zadejte následující příkaz do vim: 
 :help :substitute 
🐧 Získejte nejnovější výukové programy pro Linux, Open Source & DevOps prostřednictvím kanálu RSS nebo týdenního e-mailového zpravodaje.
🐧 Zatím 8 komentářů … přidat jeden ↓
| Kategorie | Seznam příkazů Unix a Linux | 
|---|---|
| správa souborů | kočka | 
| Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 | 
| Síťové nástroje | dig • hostitel • ip • nmap | 
| OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 | 
| Správce balíčků | apk • apt | 
| Procesy Vedení | bg • chroot • cron • odmítnout • fg • práce • killall • zabít • pidof • pstree • pwdx • čas | 
| Hledání | grep • kde • které | 
| informace o uživateli | skupiny • id • lastcomm • last • víko / libuser-víčko • logname • členové • uživatelé • whoami • kdo • w | 
| WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 | 
