Vi, editor de consola
Índice
1. Descripción
2. Invocación
3. Movimientos del cursor
4. Texto
4.1 Insertar
4.2 Borrar
4.3 Cambiar
4.4 Copiar / pegar
4.5 Buscar /substituir
5. Repetir y deshacer
6. Comandos del shell
7. Operaciones con archivos
8. Opciones de entorno
1. Descripción
Características:
Vi es el editor estándar de los Sistemas Operativos de la familia Unix/Linux. En principio puede resultar un poco difícil,sobre todo para los usuarios de Windows.Sin embargo, dado que es prácticamente el único editor que puedes encontrar pre-instalado en cualquier PC o Servidor con Unix/Linux, aprender a usarlo es muy aconsejable.
2. Invocación
$vi Editar un texto sin nombre
$vi archivo Editar un archivo (nuevo o no)
$vi archivo1 archivo2 Editar lista de archivos
$vi +n archivo Editar archivo en la línea n
$vi +/txt archivo Editar archivo en la 1a línea donde aparece txt3. Movimientos del cursor
k Arriba
j Abajo
h Izquierda
l Derecha
0 Inicio de línea
$ Fin de línea
w Word: Avanzar palabra
b Back: Retroceder palabra
e End: Al final de palabra
H Home: Esquina sup. izq. de la ventana
L Last: Esquina inf. izq. de la ventana
crtl+u Window up: Subir ventana
crtl+d Window down: Bajar ventana
crlt+b Page back: Retroceder página
crtl+f Page forward: Avanzar página
nG Go: Salta a la línea n.
1G A la primera línea
$G A la última línea
fcar Buscar en la línea el carácter car (hacia delante)
Fcar Buscar en la línea el carácter car (hacia atrás)4. Texto
4.1 Insertar
i Insertar (delante del cursor)
I Insertar al principio de la línea
a Añadir (detrás del cursor)
A Añadir al final de la línea
o Insertar una línea debajo de la actual
O Insertar una línea encima de la actual4.2 Borrar
x Borrar caracter actual
X Borrar caracter anterior
dd Borrar línea actual
D Borrar hasta final de línea
dw Borrar palabra4.3 Cambiar
rcar Reemplazar el caracter actual por car
R Reemplazar texto desde la posición del cursor
s Substituir el caracter actual por texto a insertar
S Substituir la línea actual
C Cambiar hasta el final de la línea
cw Cambiar palabra
J Unir a la línea actual la siguiente4.4 Copiar / pegar
yy Copiar en el buffer la línea actual
nyy Copiar en el buffer n líneas desde la actual
yw Copiar en el buffer la palabra actual
ynw Copiar en el buffer n palabras desde la actual
p Pega el buffer detrás del cursor
P Pega el buffer delante del cursor4.5 Buscar /substituir
% Busca el caracter delimitador ( ) [ ] { } que balancea el actual (Dentro de un entorno salta al delimitador inicial)
/ExpReg Busca hacia delante la expresión regular ExpReg
?ExpReg Busca hacia atrás la expresión regular ExpReg
n Repite la última búsqueda
N Repite la última búsqueda en el sentido contrario
:s/txt/txt2 Substituye el texto txt por txt2 la primera vez que aparece en la línea
:s/txt/txt2 /g Substituye todas las apariciones de txt por txt2 en la línea
:m,n s/txt/txt2 /g Substituye en el rango de líneas [m,n]5. Repetir y deshacer
. Repetir último comando de actualización (Borrado/Inserción/Cambio)
u Deshacer último comando de actualización
U Deshacer todos los cambios en la línea actual6. Comandos del shell
:sh Invoca un nuevo shell. Al salir continua la edición
:!CmdShell Ejecuta un comando del sistema operativo
:r!CmdShell Ejecuta un comando del S.O. e inserta su salida en la posición del cursor
:!! Repite el último comando ejecutado en un shell7. Operaciones con archivos
:w Graba las modificaciones efectuadas en el archivo
:w archivo Escribe el texto actual en archivo (Sólo si no existía)
:q Salir (si no hay cambios)
:q! Salir (sin grabar)
:wq Guardar cambios y salir
:x Guardar cambios y salir
ZZ Guardar cambios y salir
:= Muestra el número total de líneas del archivo
:.= Muestra el número de línea actual
crtl+G Muestra el nombre del archivo, línea actual, número total de líneas y porcentaje recorrido del archivo8. Opciones de entorno
:set opción Activa la opción de vi correspondiente
:set noopción Desactiva la opción de vi correspondiente
all Muestra todas las opciones y sus valores
number Muestra numeración de líneas
list Muestra caracteres de control
ic Ignora mayúsculas/minúsculas en las búsquedas