Cómo buscar y reemplazar texto en Vim en Linux

empuje es uno de los editores de archivos más populares de Linux. Parte de la popularidad se debe al modo de línea de comandos de vim, que permite a los usuarios, especialmente a los desarrolladores de software y usuarios avanzados, optimizar el tiempo para las operaciones de modificación de archivos.

En este artículo, veremos cómo buscar y reemplazar texto en empuje modo de línea de comandos.

Primero, abramos un archivo de texto en vim:

vim test.txt

Vim opera en varios modos. Los dos modos más importantes son el modo de comando mencionado anteriormente, y el segundo es el modo Insertar, que se utiliza para modificar el contenido del archivo.

De forma predeterminada, cuando se abre un archivo, vim funciona en modo comando. Puedes presionar I para ir al modo Insertar.

En el modo Comando, puede comenzar a escribir comandos vim directamente; aparecen en la parte inferior de la terminal. Esta parte inferior actúa como un símbolo del sistema integrado en vim.

Para buscar una cadena, escriba barra invertida / seguido de la cadena a buscar.

Por ejemplo: / perro

Como se vio arriba, lleva el cursor a la siguiente ocurrencia de la cadena desde la posición donde se coloca el cursor. El cursor se colocó en la cadena. marrón como se muestra en una imagen anterior. Para buscar las siguientes ocurrencias, presione norte. Después de la última aparición, vuelve a la primera, dando un mensaje "Búsqueda en ABAJO, continuando en ARRIBA".

Para buscar una cadena con un carácter especial, o por ejemplo, caracteres como un signo más (+) o un espacio, preceden al carácter con una barra inclinada:

Por ejemplo: / C \ +

Para buscar y reemplazar la primera aparición de cadena en una línea, colocamos el cursor en esa línea y usamos el siguiente comando:

Por ejemplo: s / dog / tiger

Como puede ver en la captura de pantalla anterior, la tercera línea donde se coloca el cursor, la palabra perro ha sido reemplazado con Tigre como se indica en el comando.

Para buscar y reemplazar todas las apariciones de cadena en una línea, usar /gramo al final.

Por ejemplo: s / cat / dog / g

Para buscar y reemplazar todas las ocurrencias a nivel mundial, usamos %s en lugar de solo s:

Por ejemplo:% s / dog / mouse

Si la cadena consta de un carácter especial como un espacio, puede ir precedida de una barra inclinada, de la misma manera que se mostró antes.

? ¡Salud!