Está en la página 1de 3

Editor vi

Editor vi
En la introducción temática de la práctica 2 ya se dieron las primeras pinceladas básicas y
necesarias para el desarrollo de las prácticas. No obstante, se suministra este resumen sobre el
editor vi a título informativo.

El editor vi es un editor de pantalla y está siempre en modo comando. Por ejemplo, para iniciar la
escritura de un texto se requiere dar una instrucción para que el editor pase a modo edición, y
darle otra instrucción para salir de dicho modo.

Las formas más comunes de invocar al editor desde una línea de comandos Unix son las
siguientes:

• Invocar al editor: vi
• Editar el archivo “arch”: vi arch
• Iniciar la edición en la línea 17: :17
• Editar los archivos “arch1”, “arch2“ y “arch3”: vi arch1 arch2 arch3
• Abrir el archivo “arch“ en modo sólo lectura: view arch

Los comandos se dan, por lo general, con una letra, y la salida a diversos comandos, como es el
de edición, con la tecla [Esc].

Los comandos más comunes y de gran utilidad son:

Modo edición

• Antes del cursor: i


• Después del cursor: a
• Al principio de la línea: I
• Al final de la línea: A
• Abrir nueva línea abajo del cursor: o
• Abrir nueva línea arriba del cursor: O
• Borrar carácter dentro del modo edición: [Backspace]
• Borrar palabra dentro del modo edición: [Ctrl]W
• Salir del modo edición: [Esc]

Borrar

• Una palabra: dw
• Una línea: dd
• Hasta el final de la línea: D
• El carácter donde está el cursor: x
Página 1 de 3
Editor vi

Movimiento del cursor

• Por medio de las flechas del teclado


• A la derecha: l
• A la izquierda: h
• Siguiente línea: j
• Línea anterior: k
• Final de la línea: $
• Principio de la línea: 0
• Siguiente palabra: w
• Al final de la palabra: e
• Al inicio de la palabra previa: b
• Primera línea dentro de la pantalla: H
• Última línea dentro de la pantalla: L
• Línea intermedia de la pantalla: M
• Saltar a la línea “n”: nG
• Saltar a la última línea: 0G

Movimiento de pantalla

• Media pantalla hacia delante: [Ctrl]D


• Media pantalla hacia atrás: [Ctrl]U
• Pantalla siguiente: [Ctrl]F
• Pantalla anterior: [Ctrl]B
• Una línea abajo: [Ctrl]E
• Una línea arriba: [Ctrl]Y
• Redibujar la pantalla: [Ctrl]L

Otras funciones

• Deshacer comando previo: u


• Deshacer cambios en toda la línea: U
• Buscar la cadena “cadena“ hacia delante: /cadena
• Buscar la cadena “cadena“ hacia atrás: ?cadena
• Siguiente ocurrencia: n
• Repetir la última acción: .
• Escribir a archivo y salir del editor: ZZ
• Cancelar una orden: [Esc]
• Rescribir la pantalla: [Ctrl]L

Página 2 de 3
Editor vi

Desde el editor vi se puede usar un editor en línea que tiene algunas facilidades para repetir de
forma automática una serie de instrucciones. Para tener acceso a este editor de línea, estando el
editor en espera de un comando se le da “:”

Comandos del editor de línea (ed)

• Escribir a archivo: :w
• Forzar la escritura: :w!
• Escribir a un archivo específico: :w archivo
• Salir de edición: :q
• Salir de edición sin escribir el archivo: :q!
• Siguiente fichero: :n
• Incluir el contenido de un archivo: :r archivo
• Editar un archivo: :e archivo
• Dar el nombre del archivo, número de líneas y porcentaje: :f
• Ejecutar un comando de Unix: :! comando
• Saltar a la línea “n”: :n
• Escribir de la línea 10 a la 32 a un archivo: :10,32w archivo
• Borrar las líneas de la 5 a la 10: :5,10 d
• Borrar de la línea actual al final del archivo: :.,$d
• Copiar las líneas 1 a la 2 después de la línea 3: :1,2 co 3
• Mover las líneas 4 a la 5 después de la línea 6: :4,5 m 6
• Sustituir “cadena“ por “nueva“ en la línea actual: :s/cadena/nueva/
• Sustituir “cadena“ por ”nueva“ en todo el archivo: :s/cadena/nueva/g
• Poner en la primera columna “cadena”: :1,$s/^/cadena/
• Sustituye cualquier carácter final por nada. Esto es para quitar el “^M”. El “.$” es cualquier
carácter final (.) por Line Feed: :1,$s/.$//
• Cambia los primeros tres caracteres de cada línea, por “hola”: :1,$s/^.../hola/g

Página 3 de 3

También podría gustarte