Cómo buscar y reemplazar en vi ó vim

Sé de alguien que siempre olvida como buscar y reemplazar una cadena de texto en todo un fichero con vi o vim ;) así que lo mejor será dejar este truco plasmado en una entrada.

Si queremos reemplazar una cadena de texto o palabra en todo un fichero de texto, lo abrimos con vim:

$ vim fichero

Una vez dentro, presionamos ESC para entrar en modo de ejecución de comandos, la sintaxis para reemplazar una cadena de texto en todo el fichero sería:

:g/texto_a_sustituir/s//texto_nuevo/g

Y presionamos ENTER, automáticamente todo lo que sea «texto_a_sustituir» será modificado por «texto_nuevo«.

Todo el mundo me dice que esta es una forma complicada de hacerlo, yo es la que aprendí en su día y siempre me acuerdo de ella, otra forma más sencilla es:

:%s/texto_a_sustituir/texto_nuevo/g

Me consta que hay muchas más formas de hacerlo, cada cual que encuentre la que más cómoda le parezca.

Ah, para buscar simplemente en vim, tenéis que presionar ESC para acceder a modo comando, posteriormente «/» (shift +7), escribir la cadena a buscar y presionar ENTER. Para moveros a lo largo del fichero por los resultados, presionad la tecla «n».

Dedicado al SysAdmin de Tu Receta ;)

4 comentarios en “Cómo buscar y reemplazar en vi ó vim

Comments are closed.