GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo eliminar varias líneas en Vim

Todos cometemos errores. Cometer errores es humano. Mejorarlo también es importante.

Si comete un error en Vim, puede eliminar una palabra usando dw en modo normal. Escribes dd y borra la línea actual.

Si desea eliminar varias líneas en Vim, puede usar el mismo comando dd Vim al agregarle la cantidad de líneas.

Entonces, 10dd eliminará 10 líneas de la parte inferior del cursor (incluida la línea en la que se encuentra el cursor).

Echemos un vistazo detallado a cómo puede eliminar una o más líneas en un editor que es famoso por su eficiencia.

Eliminar una sola línea

A continuación se muestran los pasos para eliminar una sola línea de texto en Vim:

  1. Ingrese al modo Normal presionando la tecla Escape (Esc)
  2. Asegúrese de que el cursor esté en la línea que desea eliminar.
  3. Presione rápidamente dd

Eso eliminará toda la línea en la que se encuentra el cursor.

Como puede ver en el gif, estoy en la primera línea y ejecuto dd el comando eliminó solo la primera línea.

Especifique el número de líneas para eliminar

Antes de usar el dd comando para eliminar una línea, puede especificar un número antes para eliminar varias líneas a la vez en Vim.

A continuación se muestra la sintaxis:

:[num]dd

Cuando especifica un número en lugar de num , Vim comenzará a eliminar líneas. Puedes pensar en esto como Vim está realizando el dd comando para num veces.

Como es evidente en el gif, ejecuté el comando 12dd (aparece en la esquina inferior derecha) y borró el bloque de 12 líneas.

Especifique un rango de líneas para eliminar

En lugar de especificar cuántas líneas eliminar desde la línea actual hasta el final, simplemente puede decirle a Vim desde qué línea debe comenzar a eliminar y hasta qué línea.

A continuación se muestra la sintaxis para eliminar un rango de líneas:

:[begin],[end]d

Desglosemos esta sintaxis...

  • : (dos puntos) indica que es un comando de Vim.
  • begin le dice a Vim desde qué línea comenzar
  • end le dice a Vim cuál es la última línea a eliminar
  • d el comando de eliminación en Vim

Además, a continuación se encuentran los caracteres utilizados para especificar el rango (utilizados para 'comienzo' y 'fin):

  • . (línea actual)
  • $ (última línea en el archivo)
  • % (todas las líneas)

Para aprender de algunos ejemplos, echemos un vistazo a ellos.

  • :10,45d - Eliminar de la línea 10 a la línea 45
  • :.,$d - Eliminar desde la línea actual hasta la última línea
  • :.,1d - Eliminar desde la línea actual hasta el principio del archivo
  • :dgg - Eliminar desde la línea actual hasta el principio del archivo

Como puede ver en este gif, aunque estoy en la línea 31 y escribí :10,29d y borró las líneas de la 10 a la 29.

Eliminar todas las líneas

Como se mencionó anteriormente, el % El símbolo se usa para especificar el rango desde el principio hasta el final del archivo, esencialmente todas las líneas.

Esto significa que, para eliminar todas las líneas de un archivo en Vim, debe usar :%d comando.

Eliminar líneas que coincidan con cierto patrón

Además de toda esta magia de Vim, ¿sabías que puedes eliminar líneas que coincidan con un patrón en particular?

Bueno, puedes, y aquí está la sintaxis.

:g/PATTERN/d

Para hacer lo contrario de esto, eliminando las líneas que no coinciden con el patrón especificado, puede usar la sintaxis especificada a continuación.

:g!/PATTERN/d

Desglosando esto, obtenemos los siguientes elementos:

  • g - buscar globalmente (es decir, todo el archivo)
  • ! - coincidencia inversa
  • PATTERN - el patrón a combinar
  • d - borrar comando

Si ejecuta el siguiente comando en Vim, eliminará todas las líneas que tengan un patrón de "caja externa" en la línea.

:g/extern\ crate/d

Eliminar todas las líneas vacías

Para eliminar líneas vacías, es necesario usar expresiones regulares para la coincidencia de patrones. A continuación se muestra el comando para realizar la eliminación de líneas vacías:

:g/^$/d

En expresiones regulares, el ^$ patrón significa cualquier línea que comienza con una nueva línea, esencialmente una línea vacía.

Conclusión

Este artículo profundiza en cómo puede eliminar líneas en Vim. Aquí hay un breve resumen de lo que aprendiste en este artículo. Siéntete libre de guardarlo y compartirlo en las redes sociales:

Si está interesado en aprender más que solo los conceptos básicos de Vim, le recomiendo usar este programa de Jovica Ilic.


Linux
  1. ¿Cómo eliminar varias líneas aleatorias de un archivo de texto usando Sed?

  2. ¿Cómo agregar varias líneas a un archivo?

  3. ¿Cómo mostrar los números de línea en vi/vim?

  4. Cómo eliminar todas las líneas de un archivo en Vim

  5. Cómo contar líneas en un archivo en UNIX/Linux

Cómo encontrar las líneas más largas en un archivo en Linux

¿Cómo salir de Vim? Múltiples formas de salir de Vim Editor

Cómo comentar varias líneas a la vez en el editor vim usando 3 métodos

Cómo mostrar u ocultar números de línea en Vim

¿Cómo eliminar varias carpetas en paralelo?

¿Cómo edito líneas anteriores en un comando de varias líneas en Bash?