vi, el editor de texto básico de linux

Vi es el editor básico integrado en todas las distribuciones Linux y que se ha ido cambiando a nano por su facilidad de uso.

vi (Visual) es un programa que entra en la categoría de los editores de texto, pues a diferencia de un procesador de texto no ofrece herramientas para determinar visualmente cómo quedará el documento impreso. Por esto carece de opciones como centrado o justificación de párrafos, pero permite mover, copiar, eliminar o insertar caracteres con mucha versatilidad. Este tipo de programas es frecuentemente utilizado por programadores para escribir código fuente de software.

Vi fue originalmente escrito por Bill Joy en 1976, tomando recursos de ed y ex, dos editores de texto para Unix, que trataban de crear y editar archivos, de ahí, la creación de vi.

Hay una versión mejorada que se llama Vim, pero Vi se encuentra en —casi— todo sistema de tipo Unix, de forma que conocer rudimentos de Vi es una salvaguarda ante operaciones de emergencia en diversos sistemas operativos.

Comando Significado 
Empezar vi 
vi nombre_de_archivoAbrir o crear el archivo 
viAbrir un archivo nuevo para nombrarlo más tarde 
vi -r nombre_de_archivoRecuperar un archivo de una caída del sistema 
view nombre_de_archivoAbrir archivo sólo para leer 
Comandos del cursor  
hMoverse un carácter hacia la izquierda 
Moverse una línea hacia abajo 
Moverse una línea hacia arriba 
Moverse un carácter a la derecha 
Moverse una palabra a la derecha 
Moverse una palabra a la derecha (pasados los signos de puntuación) 
Moverse una palabra a la izquierda 
Moverse una palabra a la izquierda (pasados los signos de puntuación) 
Moverse al final de la palabra actual 
Return Moverse una línea hacia abajo 
Back Space Moverse un carácter a la izquierda 
Space Bar Moverse un carácter a la derecha 
HMoverse a la parte de arriba de la pantalla 
MMoverse al centro de la pantalla 
LMoverse a la parte inferior de la pantalla 
Ctrl-F Paginar una pantalla hacia adelante 
Ctrl-D Desplazarse media pantalla hacia adelante 
Ctrl-B Paginar una pantalla hacia atrás 
Ctrl-U Desplazarse media pantalla hacia atrás 
Insertar caracteres y líneas  
aInsertaComando
Significado
Empezar vi
vi nombre_de_archivo
Abrir o crear el archivo
vi
Abrir un archivo nuevo para nombrarlo más tarde
vi -r nombre_de_archivo
Recuperar un archivo de una caída del sistema
view nombre_de_archivo
Abrir archivo sólo para leer
Comandos del cursor
h
Moverse un carácter hacia la izquierda
j
Moverse una línea hacia abajo
k
Moverse una línea hacia arriba
l
Moverse un carácter a la derecha
w
Moverse una palabra a la derecha
W
Moverse una palabra a la derecha (pasados los signos de puntuación)
b
Moverse una palabra a la izquierda
B
Moverse una palabra a la izquierda (pasados los signos de puntuación)
e
Moverse al final de la palabra actual
Return
Moverse una línea hacia abajo
Back Space
Moverse un carácter a la izquierda
Space Bar
Moverse un carácter a la derecha
H
Moverse a la parte de arriba de la pantalla
M
Moverse al centro de la pantalla
L
Moverse a la parte inferior de la pantalla
Ctrl-F
Paginar una pantalla hacia adelante
Ctrl-D
Desplazarse media pantalla hacia adelante
Ctrl-B
Paginar una pantalla hacia atrás
Ctrl-U
Desplazarse media pantalla hacia atrás
Insertar caracteres y líneas
a
Insertar caracteres a la derecha del cursor
A
Insertar caracteres al final de la línea
i
Insertar caracteres a la izquierda del cursor
I
Insertar caracteres al principio de línea
o
Insertar una línea por debajo el cursor
O
Insertar una línea por encima del cursor
Cambiar texto
cw
Cambiar una palabra (o parte de una palabra) a la derecha del cursor
c
Cambiar una línea
C
Cambiar desde el cursor hasta el final de la línea
s
Sustituir cadena por carácter(es) desde el cursor hacia adelante
r
Reemplazar el carácter marcado por cursor por otro carácter
r Return
Partir una línea
J
Unir la línea actual con la línea inferior
xp
Transponer el carácter del cursor con el carácter a la derecha
~
Cambiar el tipo de letra (mayúscula o minúscula)
u
Deshacer el comando anterior
U
Deshacer todos los cambios en la línea actual
:u
Deshacer el comando anterior sobre la línea última
Eliminar texto
x
Eliminar el carácter del cursor
X
Eliminar el carácter a la izquierda del cursor
dw
Eliminar la palabra (o la parte de la palabra a la derecha del cursor)
dd
Eliminar la línea que contiene al cursor
D
Eliminar la parte de la línea a la derecha del cursor
dG
Eliminar hasta el final de línea
d1G
Eliminar desde el principio del archivo hasta el cursor
:5,10 d
Eliminar las líneas de la 5 a la 10
Copiar y mover texto
yy
Tirar o copiar línea
Y
Tirar o copiar línea
p
Poner la línea tirada o eliminada por debajo de la línea actual
P
Poner la línea tirada o eliminada por encima de la línea actual
:1,2 co 3
Copiar las líneas de la 1 a la 2 y ponerlas después de la línea 3
:4,5 m 6
Mover las líneas de la 4 a la 5 y ponerlas después de la línea 6
Ajustar la numeración de las líneas
:set nu
Mostrar los números de las líneas
:set nonu
Esconder los números de las líneas
Establecer la distinción entre mayúsculas y minúsculas
:set ic
En la búsqueda se ignora la distinción entre mayúsculas y minúsculas
:set noic
En la búsqueda se distingue entre mayúsculas y minúsculas
Encontrar una línea
G
Ir a la última línea del archivo
1G
Ir a la primera línea del archivo
21G
Ir a la línea 21
Buscar y reemplazar
/string
Búsqueda de cadena de caracteres
?string
Búsqueda hacia atrás de cadena de caracteres
n
Encontrar la siguiente aparición de string en la dirección de búsqueda
N
Encontrar la aparición previa de la cadena de caracteres en la dirección de búsqueda
:g/search/s//replace/g
Buscar y reemplazar
Limpiar la pantalla
Ctrl-L
Limpiar (actualizar) la pantalla
Insertar un archivo en otro archivo
:r nombre_de_archivo
Insertar (leer) el archivo a continuación del cursor
:34 r nombre_de_archivo
Insertar el archivo después de la línea 34
Guardar y salir
:w
Guardar los cambios (escribir el contenido de la memoria intermedia)
:w nombre_de_archivo
Escribir el contenido de la memoria intermedia a un archivo con nombre
:wq
Guardar los cambios y salir de vi
ZZ
Guardar los cambios y salir de vi
:q!
Salir sin guardar los cambiosr caracteres a la derecha del cursor 
AInsertar caracteres al final de la línea 
iInsertar caracteres a la izquierda del cursor 
IInsertar caracteres al principio de línea 
oInsertar una línea por debajo el cursor 
OInsertar una línea por encima del cursor 
Cambiar texto  
cwCambiar una palabra (o parte de una palabra) a la derecha del cursor 
cCambiar una línea 
CCambiar desde el cursor hasta el final de la línea 
sSustituir cadena por carácter(es) desde el cursor hacia adelante 
rReemplazar el carácter marcado por cursor por otro carácter 
r ReturnPartir una línea 
JUnir la línea actual con la línea inferior 
xpTransponer el carácter del cursor con el carácter a la derecha 
~Cambiar el tipo de letra (mayúscula o minúscula)
uDeshacer el comando anterior 
UDeshacer todos los cambios en la línea actual 
:uDeshacer el comando anterior sobre la línea última 
Eliminar texto  
xEliminar el carácter del cursor 
XEliminar el carácter a la izquierda del cursor 
dwEliminar la palabra (o la parte de la palabra a la derecha del cursor) 
ddEliminar la línea que contiene al cursor 
DEliminar la parte de la línea a la derecha del cursor 
dGEliminar hasta el final de línea 
d1GEliminar desde el principio del archivo hasta el cursor 
:5,10 dEliminar las líneas de la 5 a la 10 
Copiar y mover texto  
yyTirar o copiar línea 
YTirar o copiar línea 
pPoner la línea tirada o eliminada por debajo de la línea actual 
PPoner la línea tirada o eliminada por encima de la línea actual 
:1,2 co 3Copiar las líneas de la 1 a la 2 y ponerlas después de la línea 3 
:4,5 m 6Mover las líneas de la 4 a la 5 y ponerlas después de la línea 6 
Ajustar la numeración de las líneas  
:set nuMostrar los números de las líneas 
:set nonuEsconder los números de las líneas 
 Establecer la distinción entre mayúsculas y minúsculas 
:set icEn la búsqueda se ignora la distinción entre mayúsculas y minúsculas 
:set noicEn la búsqueda se distingue entre mayúsculas y minúsculas 
Encontrar una línea  
GIr a la última línea del archivo 
1GIr a la primera línea del archivo 
21GIr a la línea 21 
Buscar y reemplazar  
/stringBúsqueda de cadena de caracteres
?stringBúsqueda hacia atrás de cadena de caracteres
nEncontrar la siguiente aparición de string en la dirección de búsqueda
NEncontrar la aparición previa de la cadena de caracteres en la dirección de búsqueda
:g/search/s//replace/gBuscar y reemplazar 
Limpiar la pantalla 
Ctrl-L Limpiar (actualizar) la pantalla 
 Insertar un archivo en otro archivo 
:r nombre_de_archivoInsertar (leer) el archivo a continuación del cursor 
:34 r nombre_de_archivoInsertar el archivo después de la línea 34 
Guardar y salir  
:wGuardar los cambios (escribir el contenido de la memoria intermedia) 
:wnombre_de_archivoEscribir el contenido de la memoria intermedia a un archivo con nombre 
:wqGuardar los cambios y salir de vi 
ZZGuardar los cambios y salir de vi 
:q!Salir sin guardar los cambios
Cuadro extraído de la web oficial de oracle.


Publicado

en

por

Etiquetas: