volver seleccionar linea copiar compilar busquedas buscar borrar bloque atras archivo vim editor

seleccionar - ¿Cómo borro el último carácter en cada línea usando vim?



vim copiar bloque (4)

Puede usar :%s/./{1}$// para eliminar 1 carácter del final de cada línea.

Tengo un archivo

12345a 123456b 1234567c 12345678d 123456789e

¿Cómo borro el último carácter en cada línea?
Y el archivo será

12345 123456 1234567 12345678 123456789


Utilice :g comando:

:g/^/norm $x

  • ^ coincide con cada línea que será operada.
  • norm es una abreviatura de normal , yendo antes que el comando normal que desea ejecutar.
  • $x Mueve al final de una línea y borra un carácter en modo normal

:%normal $x

  • : te pone en modo de línea de comando
  • % es un rango que representa el archivo completo
  • normal dice que estamos ejecutando un comando de modo normal
  • $x borra el último carácter de la línea

Algunos se superponen con otras respuestas, pero para mí esta es la más sencilla.


TLDR:: :%s/.$//

Para la explicación y más ejemplos leer en.

  • :%s/.$//
    • elimina cualquier carácter al final de todas las líneas (o mejor dicho: reemplaza cualquier carácter al final con nada)
    • s = comando de substitute
    • . = cualquier personaje
    • si quieres borrar . (no cualquier carácter) use /.$ lugar de .$
  • :''<,''>s/.$//g
    • elimina cualquier carácter al final de todas las líneas de la selección actual
    • ''<,''> = selección actual (obtienes esto con SHIFT+V , luego seleccionando las líneas, luego :
  • :%s/;$//
    • elimina al final de toda la línea
    • Es útil si copia y pega código de un idioma que necesita ; a uno que no