logo

Dominar la cerca i substitució a Vi Editor

Vi Editor, un potent editor de text conegut per la seva eficiència i versatilitat, és una eina bàsica per als usuaris d'Unix/Linux. Dominar les seves funcionalitats de cerca i substitució pot millorar significativament la productivitat i agilitzar les tasques d'edició de text. En aquesta guia completa, aprofundirem en diverses tècniques i estratègies per cercar i substituir text amb eficàcia dins de Vi Editor, donant poder als usuaris per aprofitar tot el seu potencial.

Taula de contingut



Comprensió de VI Editor

Abans d'aprofundir en les operacions de cerca i substitució, és crucial entendre els conceptes bàsics Nosaltres Editors . Desenvolupat per Bill Joy el 1976, Vi Editor ofereix dos modes principals: el mode d'inserció per inserir text i el mode d'ordres per executar ordres. La familiaritat amb aquests modes és essencial per a una navegació i edició eficients dins de Vi.

Hi ha dos modes a l'editor vi:

  • mode d'inserció
  • mode de comandament

Cercant a l'editor vi

Per cercar una paraula a l'editor vi, seguiu els passos següents:



Pas 1: Premeu Esc si esteu en mode d'inserció

Pas 2: Premeu /

Pas 3: Escriviu la paraula o el patró que voleu cercar



Pas 4: Premeu Entra l'un a l'altre

Pas 5: Premeu ' n' per trobar la següent aparició de paraula/patró i ' N' per anar a l'esdeveniment anterior

Exemple: /is

Captura de pantalla-de-2023-09-27-19-16-27

A l'ordre anterior, observeu que cerca el patró dins d'una paraula també com si estic buscant ' és' aleshores l'ordre anterior també inclou ' distribució' perquè conté ' és ', però, si voleu cercar una paraula sencera, seguiu els passos següents:

Pas 1: Premeu Esc si esteu en mode d'inserció

Pas 2: Premeu /

ordenació d'inserció en java

Pas 3: Tipus < per marcar l'inici de la paraula

Pas 4: Escriviu la paraula que voleu cercar

Pas 5: Escriviu > per marcar el final de la paraula

Pas 6: Premeu Entra per buscar la paraula

Exemple: /

Captura de pantalla de 2023-09-27-19-29-02

Substitució a l'editor vi

Utilitzem per trobar i substituir paraules a l'editor vi :substitut o :s La sintaxi de l'ordre és la següent:

:[range]s/{pattern}/{string}/[flags] [count]>

L'ordre cerca el patró en línies [interval] i substitueix el [patró] per [cadena]. Si no s'esmenta [interval], l'ordre substituirà les paraules de la línia actual només per [cadena].

Exemple - :s/era/eren

Captura de pantalla de 2023-09-27-19-52-13

Heu notat que l'ordre anterior només substitueix una ocurrència de la [paraula] si voleu substituir totes les ocurrències de la paraula add g bandera a l'ordre,

Exemple – :s/was/were/g

Per substituir totes les ocurrències del fitxer mitjançant Vi Editor

Per substituir totes les ocurrències del fitxer, utilitzarem el caràcter comodí ' %’ , només cal que afegiu el caràcter '%' abans de l'ordre per utilitzar-lo,

Exemple: %s/was/were/g

Captura de pantalla de 2023-09-27-20-00-12

char tostring java

Substituïu la paraula dins de l'interval donat a Vi Editor

En la sintaxi de :s L'ordre descrita anteriorment en aquest article hem vist com afegir un rang a l'ordre per substituir paraules només en un rang determinat

:[range]s/[word]/[string]/[flag]>

Exemple - :3,10s/era/eren/g en aquesta ordre, l'editor substituirà la paraula 'era' per 'era' a les línies del 3 al 10, inclosos els extrems.

També podeu afegir caràcters comodís a les ordres esmentades a continuació:

  • % (percentatge): coincideix amb totes les línies del fitxer
  • . (punt): Fa referència a la línia actual
  • $ (dòlar): Indica el final del fitxer

Exemples:

  • :.,$s/was/were/g - Substitueix totes les ocurrències de la paraula 'era' per 'era' des de la línia actual fins al final del fitxer
  • :1,.s/was/were/g - Substitueix totes les ocurrències de la paraula 'era' per 'era' des de l'inici del fitxer fins a la línia actual

Exemple:

A la captura de pantalla següent, l'ordre :.,$s/was/were/g substituirà totes les ocurrències de la paraula 'era' per 'era' des de la línia actual fins al final del fitxer.

Captura de pantalla del 2023-09-27-20-06-45

Ignoreu la distinció entre majúscules i minúscules a Vi Editor

Per ignorar la distinció entre majúscules i minúscules del patró/paraula, utilitzeu el senyalador 'i', podeu utilitzar el senyalador amb qualsevol de les ordres descrites anteriorment.

Exemple: :1,.s/Was/were/gi

Captura de pantalla de 2023-09-27-20-17-09

Com cercar i substituir a Vi Editor - Preguntes freqüents

Com puc cercar una paraula específica a Vi Editor?

Per cercar una paraula específica a Vi Editor, podeu utilitzar l'ordre de cerca. A Vi, el mode de cerca s'activa prement ` /`> , seguit de la paraula que voleu cercar i, a continuació, premeu ` Enter`> . Vi destacarà la primera ocurrència de la paraula i podeu navegar per diverses ocurrències utilitzant ` n`> per a la següent ocurrència o ` N`> per l'anterior.

/word_to_search>

Puc substituir diverses instàncies d'una paraula alhora a Vi Editor?

Sí, podeu substituir diverses instàncies d'una paraula alhora a Vi Editor mitjançant l'ordre de substitució. En mode d'ordres, escriviu ` :%s/old_word/new_word/g`> i premeu ` Enter`> . Aquesta ordre substituirà totes les ocurrències de ` old_word`> amb ` new_word`> al llarg de tot el fitxer.

:%s/old_word/new_word/g>

Quines diferències hi ha entre els modes de cerca i substitució a Vi Editor?

A Vi Editor, el mode de cerca s'utilitza per trobar ocurrències d'un patró específic dins del text, mentre que el mode de substitució s'utilitza per substituir les ocurrències d'un patró per una altra cadena. El mode de cerca s'activa prement ` /`> , i el mode de substitució s'activa mitjançant l'ordre de substitució ` :%s/old_pattern/new_string/g`> .

Per al mode de cerca:

/pattern_to_search>

Per al mode de substitució:

:%s/old_pattern/new_string/g>

Com puc fer una cerca que distingeix entre majúscules i minúscules o substituir-la a Vi Editor?

Per fer una cerca sensible a majúscules i minúscules a Vi Editor, utilitzeu ` /`> comanda seguida de ` c`> abans del patró de cerca.

Per exemple : Per cercar ` word`> de manera que distingeix entre majúscules i minúscules, escriureu ` //c`> i premeu ` Enter`> . Per a la substitució que distingeix entre majúscules i minúscules, utilitzeu l'ordre substitute amb el ` g`> bandera: ` :%s/old_word/new_word/g`> .

Per a la cerca que distingeix entre majúscules i minúscules:

//c>

Per substituir majúscules i minúscules:

què és l'altaveu
:%s/old_word/new_word/g>

Hi ha alguna manera de desfer una operació de cerca o substitució a Vi Editor?

Sí, podeu desfer una cerca o una operació de substitució a Vi Editor mitjançant el ` u`> comanda en mode de comanda. Després de realitzar una operació de cerca o substitució, només cal que premeu ` u`> , i Vi Editor desfà l'últim canvi fet al fitxer, tornant-lo al seu estat anterior.

u>

Conclusió

En aquest article hem parlat de com trobar i canviar el text a Vi Editor, que és una eina popular Linux . Vam començar per entendre què són Linux i Vi Editor. A continuació, vam explorar com cercar paraules o frases a Vi Editor i substituir-les per altres de noves. També vam analitzar alguns trucs útils com cercar paraules senceres i fer canvis sensibles a majúscules i minúscules. A més, vam tractar preguntes habituals com ara com desfer els canvis. Si seguiu aquests consells, podreu ser més eficients a l'hora d'editar text a Vi Editor.