eliminar línea en vi


170

¿Cómo puedo eliminar una línea en VI?

Aquí lo que estoy haciendo ahora:

  1. Abre la terminal alt+ ctrl+t
  2. vi a.txt
  3. Muevo el cursor a la línea que quiero eliminar, entonces, ¿qué combinación de teclas se debe usar para eliminar la línea en el editor vi ?

55
Le sugiero que lea washington.edu/computing/unix/vi.html, que le brinda una descripción general del uso. He aquí una cheatsheet: tuxfiles.org/linuxhelp/vimcheat.html Es siempre una buena idea echar un vistazo a las páginas de ese tipo antes de hacer preguntas triviales ...
Polemon

2
también hay S para eliminar una línea e ingresar inserto
Ben Creasy

Respuestas:


291

Al presionar ddse eliminará esa línea (en realidad la cortará). Para que pueda pegarlo a través de p.


22

Como otros dijeron, es ddsi estás en modo normal (presiona ESC) para asegurarte de que estás en modo normal, pero por defecto, lo estarás. Es posible que haya descubierto que vi no actúa como cabría esperar que actúe un editor. Es bastante único, y esas características únicas lo hacen extremadamente poderoso y rápido para trabajar. Si desea obtener más información, puede ejecutar vimtutoren la línea de comandos, y obtendrá un tutorial rápido (quizás una hora de lectura / experimentación) sobre los conceptos básicos de cómo usarlo.

Ahora, puede usar un editor con una interfaz más familiar. La mayoría de los sistemas tienen nano. Puede escribir nano a.txtpara abrir su archivo nano. Incluso puede ir un paso más allá: no hay ninguna razón por la que deba usar un editor basado en terminal. Como mencionó el uso de ( Ctrl+ Alt++ T) y este es el acceso directo predeterminado en Ubuntu y algunas otras distribuciones de Gnome, me sorprendería si no lo hubiera geditinstalado. En la línea de comando, intente gedit a.txty obtendrá un editor gráfico.


Algunas personas lo necesitan. Si edita archivos de texto regularmente, vale la pena aprender vim. Si no lo hace, y solo está tratando de seguir algunas instrucciones para que algo funcione, entonces probablemente no valga la pena a menos que solo esté interesado en probar un software diferente y aprender cosas nuevas.
Shawn J. Goff

Disparé vimtutor en la línea de comando, y abrió un vim, con una temperatura. archivo. ¿He cometido algún error?
IM-JM

@ im-jm No creo que haya cometido un error, pero su sistema puede tener una configuración inusual. Debe abrir un documento que comience "Bienvenido al Tutor de VIM". Si está interesado en resolverlo, debe publicar otra pregunta.
Shawn J. Goff

12

Para eliminar la línea debajo del cursor, use dd.

El comando eliminar acepta todos los modificadores posicionales normales, por lo que si está en el comienzo de la línea debajo de la que desea eliminar, simplemente dkpuede pasar al modo eliminar y subir una línea, eliminando todo lo que pasó el cursor.

También puede especificar la repetición, por 5ddlo que eliminará la línea debajo del cursor cinco veces, eliminando efectivamente las cuatro líneas actuales y siguientes.


8
O d5d. No sé por qué, pero prefiero esto. (Dato NdMd
curioso

7

Esc dd después de ir a la línea que desea eliminar


2
El escape no es necesario, si puede ir a la línea que desea eliminar.
Anthon

3
Es necesario escapar si usa las teclas de flecha en el modo de inserción para ir a la línea derecha.
Alexander

1

En modo visual,

shift + v, elige las líneas, luego d

ctrl + v, elija las columnas, luego d

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.