Acompañándote en la transformación digital    
  |       |   
Open

Editor de texto

Editor de texto

Estas aquí:
<< Regresar

Acerca de VI

La historia de este poderoso editor de textos se centra en William Nelson Joy o mayormente conocido como Bill Joy (Cofundador de la empresa Sun Microsystems), el cual comenzó el desarrollo de VI tomando como base dos editores de textos: “ed” y ”ex” . Dichos editores de textos eran para ese entonces los mayormente utilizados en equipos UNIX pero debido a su gran deficiencia y complejidad dejaron de ser utilizados.

El editor de textos VI ha sido uno de los editores de textos mayormente implementado a lo largo de la historia de los sistemas operativos UNIX, es por ello que ha logrado establecerse como el editor de textos estándar de sistemas operativos como el mismo UNIX, Linux y BSD.

Así mismo existen alternativas mucho más atractivas y estéticas a VI, como pueden ser EMACS, gEdit y nano, sin embargo y debido a que VI a logrado permanecer por tantos años como el editor de textos predefinido de UNIX este ha llegado a consolidarse de una manera impresionante, un ejemplo claro de esto es que en donde quiera que tengan un equipo con UNIX, Linux o BSD siempre encontraras instalado el editor de textos VI cosa que no te garantizan editores de texto como EMACS, gEdit o nano.

Otro de los puntos fuertes de VI es el hecho de que este no da formato al texto pues no centra ni justifica párrafos pero permite mover, copiar, eliminar o insertar caracteres por medio del búfer permaneciendo la información ahí hasta que los cambios en el archivo se hayan guardado o bien hasta que termine la ejecución de la aplicación sin haber guardado las modificaciones.

Existe una versión mejorada de VI la cual es conocida como VIM, la diferencia radica en el uso de colores para diferenciar los diferentes tipos de sentencias implementadas en los diferentes archivos de configuración de Linux lo cual resulta muy practico para los administradores de sistemas.

Modos de operación de VI

Modo Comandos

Como su nombre lo indica permite indicar comandos que ejecuten una acción específica, como búsquedas, copiar, pegar, eliminar líneas, mover el cursor, posicionarse en partes del archivo, etc. Varios comandos están disponibles directamente, con solo apretar una o dos teclas, y otros están disponibles en el modo última línea que se accede a ella presionando la tecla dos puntos ‘:’ y en seguida se indica la acción o comando a ejecutar. Para salir del modo de última línea se presiona ESC.

Modo Inserción

En este modo es cuando se está realmente en el archivo, cuando se puede escribirlo y editarlo. Estando en el modo de inserción, para regresar al modo de comandos se presiona la tecla ESC.

Tutorial básico de VI

Antes de comenzar con el tutorial básico de VI le recomendamos primero crear un archivo vació. Dentro de el ejecutaremos todos los comandos básicos de VI, para ello haremos uso del comando touch.

touch prueba.txt

Abrir

Ubique la ruta en la cual creo el archivo vacío prueba.txt y seguido de ello teclee el siguiente comando en una terminal de BASH.

vi prueba.tx

~
~
~
"prueba.txt" 0L, 0C

El siguiente paso sera añadir a nuestro archivo de texto algún contenido.

Editar

Para poder llevar a cabo esta operación primero se tendrá que abrir el archivo prueba.txt y posteriormente deberá teclear el botón Insert, esta acción nos pasara al modo inserción de Vi.

Posterior a ello deberá observar la palabra INSERTAR en la parte inferior de su izquierda de la terminal de BASH como a continuación se muestra.

Añada el siguiente texto al archivo prueba.txt.

Curso: de Administración Servidores Linux Básico
Impartido Por: Carlos Cesar Martinez Robles
Empresa: Factor Evolucion
Área de Negocio: Linux Para Todos
Gestor de Proyectos: Isaac Lemus Martín
Distribución Linux: Centos

Guardar

Para guardar los cambios hechos al archivo solo tendrá que teclear los botones:

La tecla Esc nos permite cambiar entre el modo inserción y el modo comandos, un ejemplo del modo de comandos es guardar, copiar, buscar, reemplazar y salir, en este caso la letra w indica que deben ser guardados los cambios hechos al archivo.

Si deseamos editar de nuevo el archivo prueba.txt deberá teclear nuevamente el botón:

Esto para cambiarnos del modo comandos al modo inserción

Copiar

Como siguiente ejemplo copiaremos el párrafo completo que introducimos anteriormente, para ello tenemos que cambiarnos al modo de comandos de VI lo cual podemos conseguir tecleando el botón Esc.

Una vez ubicados en el modo de comandos teclee la siguiente combinación de teclas:

La letra n indica el numero de lineas que deseamos copiar a partir de donde esta el cursor.

En este caso sustituiremos la letra n por el numero ‘6’ ya que son ‘6’ el numero de lineas que conforman nuestro párrafo así como también ubicar el cursor en la primera linea del párrafo. Si todo fue bien ejecutado debemos observar el siguiente mensaje en la esquina inferior izquierda de la pantalla:

Algunas opciones mas acerca del copiado de texto pueden ser consultadas en el tema Referencia Rápida de Comandos de Vi.

Pegar

Para pegar el párrafo que acabamos de copiar primero y antes que nada debemos teclear el botón

esto para cambiarnos del modo de comandos de Vi al modo de inserción, esto con el fin de situarnos en la ultima linea del párrafo y con ello poder dar un espacio de separación entre el párrafo original y el párrafo copiado. Para dar el espacio de separación solo basta con teclear la tecla de Enter.

Y una vez mas regresar al modo de comando de Vi tecleando la tecla Esc.

Para pegar el texto solo basta teclear la tecla p.

Debe quedar como se muestra a continuación.

Para guardar los cambios hechos al archivo solo tendrá que teclear los botones:

Recuerde que la tecla Esc nos permite cambiarnos del modo inserción al modo de comandos.

Buscar

La siguiente función sera la de buscar una palabra y acto seguido remplazarla por otra.

Para ello debemos entrar al modo de comandos de VI, si no recuerda como hacerlo no se preocupe, solo debe teclear el botón.

Como podemos observar la palabra INSERTAR ya no esta visible, esto indica que ya estamos dentro del modo de comandos de VI.

Para comenzar la búsqueda de cualquier palabra solo tiene que teclear la siguiente combinación de botones:

La frase palabra A Buscar debe reemplazarla por la palabra que usted esta buscando, como ejemplo nosotros buscaremos la palabra Básico dentro de todo el fichero.

Como podemos observar, VI nos remarco con un color diferente todas las palabras que este encontró relacionadas a la palabra Básico. Para navegar entre todas las búsquedas realizadas con la palabra Básico solo tiene que teclear (en modo de comandos) la tecla n

Reemplazar

Como siguiente paso, reemplazaremos la palabra Básico por Intermedio.

Para esto debemos estar en modo de comandos, y luego de ello teclear la siguiente sintaxis:

Siguiendo la sintaxis anterior nosotros deberíamos teclear lo siguiente:

:%s/Basico/Intermedio

Y nos tendría que arrojar los siguientes resultados:

Cerrando el VI

Por ultimo solo nos resta guardar y cerrar el archivo , para ello tenemos que cambiarnos al modo de comandos de VI, por lo que tenemos que teclear el botón Esc.

después solo habrá que teclear la combinación de teclas :wq

las letra w denota write o en español, guardar, la letra q denota quit o traducido en español, cerrar.

Para finalizar, sólo recordar que la documentación de vitutor es todo un libro en sí mismo, y que lo puedes completar con todos los recursos disponibles en la Red. Y para recordar toda la tabla de comandos existentes, lo mejor es practicar usando el editor, que (como me sucedió a mí) seguramente se acabará convirtiendo en una herramienta imprescindible para usted.

Así mismo, usted puede practicar usando el tutorial vitutor el cual puede lanzar escribiendo en una terminal de BASH lo siguiente:

vitutor

Referencia rápida de comandos

Ejecutando Vi y comandos para archivos

vi archivoNuevo Abre o crea un archivo
vi /rutaDelArchivo/archivo Abre o crea un archivo en la carpeta indicada
vi -r Muestra archivos rescatados
vi -r archivo Recupera archivos cerrados inadecuadamente
vi archivo1 archivo2 Abre múltiples archivos
vi +n archivo Abre el archivo y posiciona el cursor en la linea “n”
vi +/palabra archivo Abre el archivo y posiciona el cursor en la linea donde encuentra la palabra
:w Guarda el archivo actual

 

Terminando y cerrando archivos

:q Cierra el archivo actual
:q! Cierra el archivo actual e ignora los cambios hechos al mismo
:wq Guarda el archivo actual y cierra el mismo
:wq archivo3 Guarda el archivo actual, cierra el mismo y ademas lo renombra con el nombre de “archivo3”
😡 Guarda el archivo actual y cierra el mismo

 

Estableciendo opciones del archivo

:set Muestra las opciones con las que fue generado el archivo
:set all Muestra el menú de opciones que pueden ser implementadas al archivo
:set opcionDelMenu Implementa al archivo alguna de las opciones del menú referente al comando anterior
:set no[opcionDelMenu] Deshabilita alguna de las opciones implementadas al archivo
:set un Habilita la numeración de las lineas en Vi
:set noun Deshabilita la numeración de las lineas en Vi

 

Modificando el contenido del archivo

x Borra el carácter en donde se encuentra ubicado el puntero
X Borra el carácter antes del puntero
nx Borra n cantidad de caracteres
dd Borra una linea completa
ndd Borra n lineas completas
dw Borra la palabra donde se encuentra posicionado el puntero
ndw Borra n cantidad de palabras
D Borra desde la ubicación del puntero hasta el final de la linea
dL Borra desde la ubicación del puntero hasta el final de la pantalla
dG Borra desde la ubicación del puntero hasta el final del archivo
cw Reemplaza la palabra en la cual se situá el puntero por un nuevo texto
J Concatena la linea actual con la siguiente
~ Cambia de mayúscula a minúscula el carácter actual
u Regresa a un estado antes el archivo
U Regresa a un estado antes la línea actual
. Repite el ultimo cambio de texto
>> Mueve la línea actual a la derecha un tabulador
<< Mueve la línea actual a la izquierda un tabulador

 

Búsqueda y remplazo de texto [En modo comandos de Vi]

/palabraABuscar Hace una búsqueda de adelante hacia a tras del documento de la palabra especificada
?palabraABuscar Hace una búsqueda de tras hacia adelante del documento de la palabra especificada
n Se mueve de adelante hacia a tras de la siguiente ocurrencia de la palabra buscada
N Se mueve de atrás hacia adelante de la siguiente ocurrencia de la palabra buscada
:s/actual/futuro Sustituye la palabra ‘actual’ por la palabra ‘futuro’ en la línea actual
:s/actual/futuro/g Sustituye todas las palabras ‘actual’ por la palabra ‘futuro’ en la línea actual
:%s/actual/futuro/g Sustituye todas las palabras ‘actual’ por la palabra ‘futuro’ en todo el archivo
:s/actual/futuro/g/c Sustituye todas las palabras ‘actual’ por la palabra ‘futuro’ en todo el archivo y ademas pide confirmación para efectuar los cambios

 

Copiando y pegando texto

y Copia la linea en la cual se encuentra ubicado el puntero
yy Copia la linea en la cual se encuentra ubicado el puntero
nyy Copia n numero de lineas tomando como referencia la ubicación donde se encuentra ubicado el puntero
yw Copia la palabra actual
pp Pega después del cursor
P Pega antes del cursor

Videos: Uso de VI/VIM

Introducción

Funciones básicas en VI/VIM

Acciones comunes en VI/VIM

Última actualización: septiembre 17, 2018

Deja un comentario

Facebook
Facebook
LinkedIn
YOUTUBE
YOUTUBE