Introducción.
Vi es uno de los editores de texto más poderos y añejos que hay en el
mundo de la informática. Resulta sumamente útil conocer la
funcionalidad básica de Vi a fin de facilitar la edición de ficheros de
texto simple, principalmente ficheros de configuración.
Procedimientos.
Sustento lógico necesario.
Por lo general, vi se instala de modo predefinido en la mayoría de las distribuciones de GNU/Linux a través del paquete
vim-minimal. Puede añadirse funcionalidad adicional a través de los siguientes paquetes:
• |
vim-enhanced: |
Una versión mejorada de vi que añade color a la sintaxis y otras mejoras en la interfaz. |
• |
vim-X11: |
Versión de vi para modo gráfico que resulta más fácil de utilizar gracias a los menús y barra de herramientas. |
Si lo desea, puede proceder a instalar Vi y el resto de los paquetes relacionados realizando lo siguiente:
yum -y install vim vim-enhanced vim-common vim-minimal
|
Conociendo vi.
Acceda al sistema autenticando como usuario sin privilegios
(fulano) y realice lo siguiente:
Lo anterior mostrará una interfaz como la siguiente:
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"holamundo.txt" [Fichero nuevo] 0,0-1 Todo
|
Pulse una vez el botón
<INSERT> de su teclado y observe los cambios en la pantalla
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
-- INSERTAR -- 0-1 Todo
|
Note que en la parte inferior de la pantalla aparece la palabra «
INSERTAR».
Esto significa que, al igual que cualquier otro editor de texto
conocido, puede comenzar a insertar texto en el fichero. Escriba la
frase «Linux Para Todos», pulse la tecla <ENTER> y
escriba de forma propositiva la frase «un vuen citio donde empesa»:
Linux Para Todos
un vuen citio donde empesar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
-- INSERTAR -- 0-1 Todo
|
Posicione el cursor del teclado justo debajo de la «v» de la palabra
«vuen» y pulse de nuevo la tecla <INSERT> del teclado. Notará que
ahora aparece la palabra «REEMPLAZAR»:
Linux Para Todos
un vuen citio donde empesar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
-- REEMPLAZAR -- 0-1 Todo
|
Pulse la tecla «b» y observe como se reemplaza la letra «v» para quedar la palabra corregida como «buen»:
Linux Para Todos
un buen citio donde empesar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
-- REEMPLAZAR -- 0-1 Todo
|
Mueva el cursor con las flechas del teclado y repita el procedimiento
reemplazando la letra «c» por una «s» en la palabra «citio» de modo que
quede como «sitio» y de igual modo reemplace la letra «s» por una «z»
en la palabra «reemplasar» de modo que quede como «empezar»:
Linux Para Todos
un buen sitio donde empezar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
-- REEMPLAZAR -- 0-1 Todo
|
Pulse la tecla <ESC> para salir del modo de reemplazo e
inmediatamente pulse la tecla : (dos puntos) seguido de la letra «w» a
fin de proceder a guardar el fichero en el disco duro:
Linux Para Todos
un buen sitio donde empezar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:w
|
Pulse la tecla <ENTER> y notará que aparece un mensaje en la
parte inferior de la pantalla que indicará que el fichero ha sido
guardado:
Linux Para Todos
un buen sitio donde empezar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"holamundo.txt" [Nuevo] 2L, 44C escritos 2,3 Todo
|
Vuelva a pulsar la tecla
: (dos puntos) e inmediatamente escriba «saveas adiosmundo.txt»:
Linux Para Todos
un buen sitio donde empezar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:saveas adiosmunto.txt
|
Pulse nuevamente la tecla <ENTER> y observe el mensaje en la
parte inferior de la pantalla que indica el fichero acaba de ser
guardado como adiosmundo.txt:
Linux Para Todos
un buen sitio donde empezar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"adiosmundo.txt" [Nuevo] 2L, 44C escritos 2,3 Todo
|
Vuelva a pulsar la tecla «INSERT» para regresar al modo de inserción y escriba lo siguiente:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy malo
La gente que conozco es mala
Mi vida ha sido muy mala
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
-- INSERTAR -- 5,24 Todo
|
A continuación pulse la tecla <ESC> e inmediatamente pulse la tecla
: (dos puntos) seguido de la combinación de teclas
%s/mal/buen/g del siguiente modo:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy malo
La gente que conozco es mala
Mi vida ha sido muy mala
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:%s/mal/buen/g
|
Pulse de nuevo la tecla <ENTER> y observe como ha sido
reemplazada la cadena de caracteres «mal» por la cadena de caracteres
«buen» en todo el fichero, quedando del siguiente modo:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
3 sustituciones en 3 líneas 5,1 Todo
|
En el procedimiento anterior, el símbolo «%» indicaba que se
aplicaría un procedimiento a todo el fichero, no solo en la misma línea,
la letra «s» indicaba que se realizaría la búsqueda de la cadena de
caracteres «mal» definida después de la diagonal (/) por la cadena de
caracteres «buen» en toda la línea, indicado por la letra «g».
A continuación, posiciones el cursor de teclado utilizando las flechas del teclado hasta el primer carácter de la primera línea:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
3 sustituciones en 3 líneas 5,1 Todo
|
Ahora pulse dos veces consecutivas la tecla «d», es decir, pulsará «dd». Observe como desaparece la primera línea:
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
|
Pulse ahora la tecla «p» para volver a pegar la línea:
un buen sitio donde empezar
Linux Para Todos
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
|
Observe que la línea «Linux Para Todos» reapareció debajo de la línea
«un buen sitio donde empezar». Utilizando las flechas del teclado,
coloque el cursor del teclado nuevamente sobre el primer carácter de la
primera linea del fichero, es decir, sobre la letra «u» de la línea «un
buen sitio donde empezar»:
un buen sitio donde empezar
Linux Para Todos
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
1,1 Todo
|
Vuelva a pulsar «dd» para cortar la linea «un buen sitio donde
empezar» e inmediatamente pulse la tecla «p» para pegar la linea en el
lugar correcto:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
2,1 Todo
|
Coloque ahora el cursor sobre la letra «C» de la linea «Creo que el
mundo es un lugar muy bueno» y pulse la tecla «3» seguido de «dd» y
observe como son cortadas las tres siguientes lineas:
Linux Para Todos
un buen sitio donde empezar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
3 líneas menos 2,1 Todo
|
Pulse la tecla «p» una vez, observe el resultado. Vuelva a pulsar la
tecla «p» y observe el resultado. Las dos acciones anteriores añadieron
ahora 6 líneas restaurando las eliminadas anteriormente y agregando tres
líneas más con el mismo contenido:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
3 líneas más 2,1 Todo
|
Pulse ahora la tecla
: (dos puntos) seguido de la tecla «x» y la tecla <ENTER> a fin de salir guardando el fichero.
Abra nuevamente el fichero
adiosmundo.txt con vi y pulse la combinación de teclas
:/buen, de modo que se realice una búsqueda de la cadena de caracteres «buen» y además se resalten las coincidencias:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
/buen 2,1 Todo
|
Para cancelar el resaltado de los resultados, pulse la combinación de teclas
:nohl:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
2,1 Todo
|
Pulse
A (combinación de las teclas SHIFT+a) mientras el cursor permanece en la segunda linea y observe que iniciará el modo
INSERTAR colocando el cursor al final de la línea donde se encontraba:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
~
-- INSERTAR -- 2,1 Todo
|
Pulse la tecla <ESC> y enseguida
o. Notará que iniciará el modo
INSERTAR abriendo una nueva línea:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
-- INSERTAR -- 3,1 Todo
|
Pulse nuevamente la tecla <ESC> y en seguida la combinación
dG (d, luego SHIFT+G). Notará que elimina todo el contenido del texto desde la posición del cursor hasta el final del fichero:
Linux Para Todos
un buen sitio donde empezar
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
7 líneas menos 2,1 Todo
|
Pulse la combinación
:u y notará que el cambio se ha descartado, regresando las 7 líneas que habían sido eliminadas:
Linux Para Todos
un buen sitio donde empezar
Creo que el mundo es un lugar muy bueno
Creo que el mundo es un lugar muy bueno
La gente que conozco es buena
Mi vida ha sido muy buena
La gente que conozco es buena
Mi vida ha sido muy buena
~
~
~
~
~
~
~
~
~
~
~
7 líneas más 3,0-1 Todo
|
Otras combinaciones de teclas.
Combinación
|
Resultado
|
i [o bien la tecla insert]
|
Inicia insertar texto antes del cursor
|
a
|
Inicia insertar texto después del cursor
|
I (i + SHIFT)
|
Inicia insertar texto al inicio de la línea donde se encuentra el cursor
|
A (a + SHIFT)
|
Inicia insertar texto al final de la línea donde se encuentra el cursor.
|
o
|
Abre una nueva línea e inicia insertar texto en la nueva línea.
|
x
|
Elimina el carácter que esté sobre el cursor.
|
dd
|
Elimina la línea actual donde se encuentre el cursor.
|
D
|
Elimina desde la posición actual del cursos hasta el final de la misma línea donde se encuentra el cursor.
|
dG
|
Elimina todo hasta el final del fichero.
|
:q
|
sale si no hubo cambios en el ficheros.
|
:q!
|
sale descartando los cambios en el fichero.
|
:w
|
guarda el fichero sin salir.
|
:wq
|
guarda el fichero y sale de vi.
|
:x
|
lo mismo que :wq
|
:saveas /lo/que/sea
|
guarda el fichero como otro fichero donde sea necesario.
|
:wq! ++enc=utf8
|
codifica el fichero en UTF-8.
|
:u
|
deshacer cambios
|
:red
|
rehacer cambios.
|
:/cadena de caracteres
|
Búsqueda de cadenas de caracteres.
|
:nohl
|
Cancelar el resaltado de resultados de Búsqueda.
|
Más allá de las funciones básicas.
Instale el paquete vim-enhanced:
yum -y install vim-enhanced
|
Utilice
vimtutor y complete el
tutor interactivo oficial de Vi a fin de que conozca el resto de las funcionalidades más importantes.
FUENTE ORIGINAL DEL TUTORIAL: AQUI
No hay comentarios:
Publicar un comentario