În acest articol, vom explica una dintre cele mai utile caracteristici ale sale, care este căutarea și înlocuirea. Cu o mână de configurație, puteți căuta orice doriți la viteza aprinsă și cu granularitate mai fină.
Metoda nr. 1 Găsiți și înlocuiți o singură apariție la un moment dat (folosind comanda slash și punct)
Cel mai simplu mod de a căuta și înlocui un cuvânt în Vim este prin utilizarea comenzii slash și dot. Slash (/) poate fi folosit pentru a căuta un cuvânt, în timp ce punctul (.) Poate fi utilizat pentru înlocuirea acelui cuvânt.
Urmați pașii simpli de mai jos pentru a căuta și a înlocui orice cuvânt din editorul Vim:
- Deschideți fișierul în Vim
- Apăsați tasta slash (/) împreună cu termenul de căutare precum / search_term și apăsați Enter. Acesta va evidenția cuvântul selectat.
- Apoi apăsați apăsarea tastei cgn pentru a înlocui cuvântul evidențiat și a introduce termenul replace_term
- Reveniți la modul normal. Apoi, apăsați n pentru a trece la următoarea apariție a termenului de căutare.
- Apoi apăsați punctul (.) Dacă doriți să înlocuiți următoarea apariție cu același replace_term, altfel apăsați din nou tasta n pentru a trece la următoarea apariție.
Este cea mai rapidă și cea mai bună metodă pentru căutarea de bază și înlocuiește funcțiile, deoarece implică doar câteva apăsări de taste și mai puține perturbări ale funcționării curente. Cu toate acestea, pentru căutarea unui cuvânt care apare de prea multe ori, va deveni o sarcină repetitivă și consumatoare de timp.
Cu Vim, există o altă modalitate mai bună de a evita această sarcină repetitivă care folosește comanda substitutivă.
Metoda # 2 Găsiți și înlocuiți folosind comanda Substitute
Comanda de înlocuire poate fi utilizată pentru efectuarea căutării de bază până la avansată și înlocuirea funcțiilor cu o singură comandă. Sintaxa acestei comenzi este:
$: s/<termen de căutare> /<substitut_term> /opțiune
Rețineți că trebuie să introduceți această comandă în modul normal.
Unde
- S: înseamnă substitut
- search_term: cuvântul pe care doriți să îl căutați și să îl înlocuiți
- replace_term: cuvântul cu care doriți să îl înlocuiți
- Opțiune: c (pentru confirmare), g (înlocuiți toate aparițiile într-o singură linie), i (pentru ignorarea cazului)
Căutați și înlocuiți
Pentru a efectua căutarea de bază și înlocuirea utilizând comanda substitutivă, utilizați următoarea sintaxă:
:%s/<termen de căutare> /<substitut_term> /gAceastă comandă va înlocui toate instanțele search_term cu replace_term.
De exemplu, acesta este exemplul nostru de text:
Ubuntu este unul dintre cele mai utilizate sisteme de operare Linux. Ubuntu include mii de programe utile. Cu linia de comandă Ubuntu, puteți realiza aproape orice fel de sarcină.
Pentru a înlocui fiecare apariție a Ubuntu cu Debian în textul următor, ar fi utilizată următoarea comandă:
:%s/Ubuntu/Debian/gCăutați și înlocuiți într-o singură linie
Pentru a căuta și a înlocui apariția unui cuvânt numai într-o singură linie în locul întregului fișier, utilizați următoarea sintaxă:
: s/<termen de căutare> /substitut_term/gDe exemplu, pentru a înlocui apariția Ubuntu cu Debian în exemplul de text de mai sus, ar fi utilizată următoarea comandă fără simbolul%:
: s/Ubuntu/Debian/gCăutați și înlocuiți cu confirmare
Dacă doriți să vi se solicite confirmarea înainte de a înlocui termenul de căutare, utilizați c la sfârșitul comenzii de căutare după cum urmează:
: s/<termen de căutare> /<substitut_term> /gcComanda de mai sus va cere confirmarea înainte de fiecare înlocuire (introduceți y pentru da în timp ce n pentru nu).
Căutați și înlocuiți fără majuscule
Când efectuați căutarea și înlocuirea în Vim, în mod implicit, este diferențiat de majuscule și minuscule. Puteți efectua o căutare insensibilă la majuscule și minuscule adăugând i la sfârșitul comenzii după cum urmează:
: s/<termen de căutare> /<substitut_term> /daDe exemplu, pentru a căuta termenul Ubuntu indiferent de caz (UBUNTU, Ubuntu, ubuntu, uBuntu), ar fi utilizată următoarea comandă:
: s/ubuntu/debian/daCăutați și înlocuiți întregul cuvânt
În mod implicit, comanda substitutivă caută orice potrivire, indiferent dacă este parțială sau completă. Pentru a potrivi exact căutarea_term și apoi înlocuiți-l cu înlocuirea_term, atașați căutarea _term în.
De exemplu, în unele documente, doriți să căutați și să înlocuiți cuvântul exact pe care l-ați făcut cu mine. În acest caz, va fi utilizată următoarea comandă:
: s/<tu> /Eu/Va găsi cuvântul dvs. și îl va înlocui cu mine. Cu toate acestea, nu va înlocui cuvintele ca ale tale.
Căutați și înlocuiți cuvinte între anumite linii
Pentru a căuta un cuvânt printre rândurile în loc de doar o linie sau întregul fișier, se poate utiliza următoarea sintaxă:
:<linie_început>,<capăt de linie>s/<termen de căutare> /<substitut_term> /gDe exemplu, pentru a căuta și a înlocui apariția Ubuntu cu Debian de la linii cuprinse între 3 și 8 într-un anumit fișier, comanda ar fi:
:1, 10 ani/ubuntu/debian/gPentru a căuta și a înlocui apariția unui cuvânt de la linia curentă la următorul x număr de linii, va fi utilizată următoarea sintaxă:
: s/termen de căutare/substitut_term/g xÎn mod similar, pentru a căuta și a înlocui apariția unui cuvânt de la linia curentă la ultima linie: va fi utilizată următoarea sintaxă:
:.,$ s/termen de căutare/substitut_term/gCONCLUZIE
În acest articol, am învățat cele două moduri de linie de comandă de căutare și înlocuire a oricărui cuvânt într-un editor Vim. Prima comandă care folosea bară și punct este cea mai simplă și mai simplă metodă, dar se dovedește a fi repetitivă atunci când căutați și înlocuiți un cuvânt care apare de prea multe ori. Cealaltă comandă, care este comanda de substituție, poate părea dificilă și complexă, dar odată ce începeți să o practicați, o veți găsi extrem de utilă în mai multe scenarii.