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 ;)