Editor vi

vi es un editor de texto elemental para consola unix/linux y mac (unix). Dentro de vi, puede haber dos estados o modos:

  • En el modo de comandos, vi está esperando que le des alguna orden (por tanto, interpreta lo que escribas como órdenes).
  • En el modo de edición, vi está esperando que escribas el texto del fichero (por tanto, interpreta lo que escribas como texto).

Cuando entras en vi, está en modo de comandos. Para pasar al modo de edición puedes pulsar i (insertar), a (añadir), o (añadir una línea). Para pasar al modo de comandos, puedes pulsar Escape o Suprimir.


Moverse

Si no podemos movernos con las flechas del teclado, las teclas para moverse en vi son:

k (arriba)

h (izquierda)        l (derecha)

j (abajo)

Acciones más habituales de vi
 
comando descripción
 i insertar antes del cursor
 a añadir detrás del cursor
 o añadir una línea en blanco
 x borrar un carácter
 j borrar el final de línea (une dos líneas)
 dd borra la línea completa
 u deshacer la última edición
 :q salir
 :q! salir sin guardar
 :w guardar
 :wq guardar y salir
 /config Busca la palabra , config en este caso
 yy copia toda la línea
 p pega la información copiada
:help ayuda de vi
Avanzar – Retroceder página

Teclados universales: Avanz Pág / Retr Pág

Teclado mac: cmd + bajar / cmd + subir

Numerar cada línea

Entrar modo comando (por si estamos en modo escritura), pulsamos “Esc”

:set number
:set nu
Quitar numeración de cada línea
:set nonu
:set nu!
Copiar la línea n detrás de la línea m
:n copy m
Copia desde la línea n1 hasta la línea n2 detrás de la línea m
:n1, n2 copy m
Reemplazar cadena de caracteres de golpe en todo el fichero

Por ejemplo sustituir la palabra “servidor1” por “servidor2”

Entrar modo comando (por si estamos en modo escritura), pulsamos “Esc”

:1,$ s/servidor1/servidor2/g

donde:
“1″ es la primera línea donde comenzaremos la búsqueda/reemplazo
“$” significa la última línea donde terminaremos la búsqueda/reemplazo, en este caso “$” representa el fin del archivo (podemos sustituirla por el número de línea hasta donde queremos que llegue)
“s/” significa “search”, o “buscar”, y lo que aparece seguido a la barra es la cadena a buscar.
“/” como separador, y la cadena siguiente es el texto que reemplaza la cadena buscada
“/g” para terminar significa “global” (lo opuesto sería no hacer la sustitución a todo lo que se encuentre, o hacerlo de forma “interactiva”).

Esquema de acciones con el teclado

vi

Anuncios

Deja un comentario...dicen que es gratis!

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s