Introducción al Editor Vi

El editor Vi sigue siendo el editor más popular de la familia Linux. Hay muchas herramientas para editar archivos, pero usar Visual Editor (Vi) es el método más popular debido a sus muchas funciones. Se lanzó una versión avanzada del editor Vi, VIM , pero Vi aún se destaca por varias razones. Vi requiere menos recursos, tiene una interfaz amigable y está disponible en la mayoría de las distribuciones de Linux.

Con el editor Vi, puede crear un archivo nuevo, editar un archivo existente, moverse por el archivo, etc. En esta guía, aprenderemos todo sobre el editor Vi, desde crear un archivo nuevo hasta editar el archivo usando varios modos.

Primeros pasos con el Editor Vi

El editor Vi permite a los usuarios crear nuevos archivos o trabajar con archivos existentes usando varios comandos.

1. vi new-file : los comandos crean un nuevo archivo si no existe. Sin embargo, si el archivo especificado existe, lo abrirá.

Aquí se explica cómo crear un nuevo archivo llamado linuxhint .

$ vi linuxhint

Con el nuevo archivo creado, puede agregar texto o salir usando varios comandos que discutiremos más adelante. Cada nueva línea tiene la tilde (~), que simboliza una línea no utilizada.

2. vi -R filename : el comando abre el archivo nombrado en modo de solo lectura. De esa manera, no puede editar nada en el archivo existente.

$ vi -R linuxhint

Notará que el archivo se abre en el editor Vi pero está en modo de solo lectura.

3. ver nombre de archivo : el comando funciona de manera similar al anterior en el sentido de que es una forma alternativa de abrir un archivo en modo de solo lectura usando el editor Vi.

Vi Modos operativos

Dependiendo de su objetivo, puede usar los dos modos de edición del editor Vi: modos de comando e inserción . Además, Vi tiene un modo Escape para ejecutar varios comandos que comienzan con dos puntos seguidos del comando.

1. Modo de comando

El modo de comando es el modo predeterminado que se carga cuando abre un archivo usando Vi. En este modo, escribe las teclas del teclado para navegar por el archivo, copiar, pegar, mover el cursor, etc. Idealmente, el modo de comando le permite escribir varios comandos para manipular el archivo abierto.

Para cambiar al modo de comando, presione la tecla Esc del teclado y notará un pitido en la pantalla, lo que indica que ha ingresado al modo de comando.

2. El modo de inserción

Después de abrir un archivo y necesitar agregarle texto, debe cambiar al modo de inserción. Para eso, presione la tecla i del teclado. Una vez que haya ingresado al modo de inserción, puede comenzar a escribir y el nuevo texto se escribirá en la posición actual del cursor.

Una vez que haya escrito su texto, puede cambiar al modo de comando presionando la tecla Esc.

3. Modo de escape

Debe usar el modo de escape cuando realice otras tareas, como guardar su archivo, cambiar su apariencia, etc. Puede cambiar rápidamente al modo de escape presionando los dos puntos (:) en su teclado.

Una vez en modo escape, escriba el comando que desea ejecutar y presione la tecla enter. Por ejemplo, puede guardar y salir del archivo presionando el comando :wq .

Trabajando con el Editor Vi

El editor Vi ofrece varias formas de trabajar con un archivo. Hay comandos para navegar por el archivo, desplazarse por él, editar el archivo, buscar dentro de un archivo, guardar, salir, etc. Analicemos los comandos en detalle y sus descripciones.

1. Navegar por un archivo

Cuando desee navegar dentro de un archivo, debe cambiar al modo de comando para evitar afectar el texto. Una vez en el modo de comando, use los siguientes comandos para navegar por su archivo.

  • j : Presionar la tecla del teclado j moverá el cursor una línea hacia abajo.
  • k : Mueve la posición del cursor una línea hacia arriba.
  • h : Mueve el cursor un carácter a la izquierda.
  • l : Mueve el cursor un carácter a la derecha.
  • $ : Al presionarlo se mueve el cursor al último carácter de la línea actual.
  • 0 o I : Al presionarlo se mueve el cursor a la primera posición de la línea actual. Tenga en cuenta que la I está en mayúscula porque el editor Vi distingue entre mayúsculas y minúsculas.
  • B : Mueve el cursor al primer carácter de la palabra anterior en la misma línea.
  • W : Mueve el cursor al primer carácter de la siguiente palabra en la misma línea.
  • H : Mueve el cursor a la parte superior de la ventana.
  • nH : Mueve el cursor a la n-ésima posición desde la parte superior de la ventana. Por ejemplo, 2H colocaría el cursor en la segunda línea desde arriba.
  • L : Mueve el cursor a la parte inferior de la ventana.
  • nL : Mueve el cursor a la enésima línea desde abajo. Presionar 3L movería el cursor a la tercera línea desde abajo.

Otra forma conveniente de mover el cursor a una línea específica es presionando los dos puntos seguidos del número de línea. Por ejemplo, podríamos acceder a la cuarta línea del archivo presionando :4 y presionando la tecla Intro del teclado, como se muestra.

La mayoría de los comandos anteriores ayudan a navegar un archivo de un carácter a la vez. Sin embargo, puede desplazarse por todo el archivo con los comandos de la sección a continuación, especialmente cuando tiene un archivo grande.

2. Desplazarse por el archivo

Para desplazarse rápidamente por su archivo usando el editor Vi, cambie al modo de comando y luego use los siguientes comandos. Tenga en cuenta que debe usar el control (ctrl) y otras teclas para ejecutar un comando.

  • CTRL + d : este comando mueve el cursor a la mitad del tamaño de la pantalla.
  • CTRL + u : el comando mueve la posición del cursor a la mitad del tamaño de la pantalla.
  • CTRL + f : Mueve el cursor hacia adelante a una pantalla completa.
  • CTRL + b : Mueve el cursor hacia atrás una pantalla completa.
  • CTRL + e : Mueve la pantalla una línea hacia arriba.
  • CTRL + y : Mueve la pantalla una línea hacia abajo.

3. Eliminación en Vi Editor

El modo de comando en el editor Vi le permite eliminar caracteres o líneas en una posición determinada de la siguiente manera.

  • X : Borra el carácter a la izquierda de la posición del cursor.
  • x : Elimina el carácter en la posición actual del cursor.
  • d^ : Elimina todos los caracteres desde la posición actual hasta el comienzo de la línea en particular.
  • d$ : Borra todos los caracteres de la línea hasta el final, comenzando desde la posición del cursor.
  • dd : Cuando se presiona, borra la línea actual donde se encuentra el cursor. Agregue el número de líneas para eliminar más de una línea de la posición actual. Por ejemplo, al presionar 2dd se eliminan las siguientes dos líneas, comenzando con la línea actual.
  • dG : Elimina todas las líneas del archivo, comenzando por la línea actual.
  • D : Borra todas las palabras desde la posición actual hasta el final de la línea.
  • Dw : Borra todos los caracteres desde la posición actual hasta la siguiente palabra.
  • ndw : Elimina todos los caracteres desde la posición actual hasta las palabras especificadas. Por ejemplo, 2dw elimina todos los caracteres de las siguientes dos palabras en la misma línea.
  • u : Deshace el último cambio realizado a un archivo dado.
  • U : Puede deshacer los cambios realizados en la línea presionando U.

Las anteriores son las formas comunes de eliminar caracteres, palabras y líneas usando el editor Vi.

4. Edición del archivo

Editar el archivo, incluida la inserción de texto nuevo, utilizando el editor Vi, requiere que ingrese al modo de inserción. Según la tecla que presione para ingresar al modo de inserción, puede editar el archivo de manera diferente.

  • i : Es la forma más común de insertar el modo, y al presionarlo se insertará cualquier texto nuevo que escriba antes de la ubicación actual del cursor.
  • I : Al presionar mayúsculas, insertaré el texto que escriba al comienzo de la línea actual del cursor. Una vez que lo presione, el cursor se moverá al inicio de la línea.
  • A : La a mayúscula mueve el cursor al final de la línea actual. Cualquier texto que escriba se insertará en la última posición de la línea.
  • a : Cuando ingrese al modo de inserción presionando a, el nuevo texto que ingrese se insertará después de la posición actual del cursor.
  • – Se utiliza cuando desea insertar una nueva línea para el texto debajo de la posición del cursor. El nuevo texto que ingrese aparecerá en una nueva línea debajo de la posición actual del cursor.
  • – Al pulsar la o mayúscula se crea una nueva línea encima de la posición del cursor para el nuevo texto que introduzca.
  • r : ingrese al modo de inserción pero solo reemplace el carácter debajo de la posición del cursor con un carácter presionando la tecla r .
  • s : Reemplaza el carácter actual debajo del cursor con cualquier número de caracteres que ingrese en lugar de solo uno.
  • R : al presionar la tecla R se ingresa al modo de inserción, que reemplaza todo el texto desde la posición del cursor a la derecha con el texto que ingresa. En lugar de mover el texto para dejar espacio para el nuevo texto, reemplazará el texto existente a la derecha.
  • S : Reemplaza toda la línea con el nuevo texto que ingresa.

Entonces, cuando desee cambiar al modo de inserción en Vi, use cualquiera de las opciones anteriores para ingresar al modo de inserción, según lo que desee lograr.

5. Comandos de tirar

Copiar en Vi se conoce como tirar . Hay cuatro opciones para copiar texto utilizando el editor Vi.

  • yy : Las teclas yy del teclado, cuando se presionan, copiarán la línea actual y podrá pegarla en otro lugar.
  • p : Pega el texto copiado después de la posición actual del cursor.
  • P : Pega el texto copiado antes de la posición del cursor.
  • yw : Copia el texto de una palabra desde la posición actual del cursor hasta el final de la palabra.

6. Guardar un archivo en Vi

Vi permite a los usuarios guardar un archivo y salir o guardarlo y continuar editándolo. La mayoría de los comandos requieren que estés en el modo de comando y luego cambies al modo de escape presionando los dos puntos . Echémosles un vistazo.

  • Shift + zz : Al presionar la tecla Shift del teclado y la tecla z dos veces, se guardará el archivo actual y se cerrará.
  • :w : Puede usar el comando para guardar los cambios en su archivo mientras lo mantiene abierto. Asegúrese de estar en el modo de comando, luego presione :w y presione la tecla Intro. Una vez que lo haga, aparecerá una línea que muestra el nombre del archivo, la cantidad de líneas y el tamaño en bytes en la parte inferior, lo que confirmará que su texto se ha guardado y puede continuar editándolo.

  • :q! : El comando saldrá de Vi y cerrará el archivo sin guardar los cambios.
  • :wq : El comando guarda su archivo y cierra el editor, llevándolo a la ventana de su terminal.

7. Búsqueda en Vi Editor

Con el editor Vi, puede buscar y reemplazar rápidamente una cadena o un carácter determinado. Puede encontrar una instancia de la cadena o todas las instancias.

  • /cadena : la sintaxis se usa cuando desea buscar una cadena específica en el texto.

En la imagen a continuación, buscamos la cadena «linuxhint» y presionamos la tecla Intro. El cursor se moverá a donde está la cadena en el archivo. Puede pasar a la siguiente instancia de la cadena presionando las teclas del teclado n o N en el modo de comando.

  • :s/string : La sintaxis se usa cuando desea encontrar una cadena determinada en la línea actual. La cadena encontrada se elimina a menos que especifique con qué cadena reemplazarla.

En el siguiente ejemplo, el cursor está en la línea 10 y queremos encontrar la cadena «linux».

En el resultado a continuación, en la línea 10, observamos que en la cadena «linuxhint», la cadena «linux» se elimina y no se reemplaza.

Utilice la siguiente sintaxis para encontrar una cadena y reemplazarla con otra en la línea actual.

  • :s/cadena/reemplazar

Busquemos la cadena “ linux ” y reemplácela con “ UNIX ” en la línea 14, como sigue.

Nuestra salida reemplazará la primera instancia de la cadena de destino en la línea. Tenga en cuenta que reemplazar la cadena solo funciona para la línea actual donde se encuentra el cursor.

  • :%s/patrón/reemplazar : use esta sintaxis para buscar todas las instancias de una cadena determinada y reemplazarla por otra.

En el siguiente ejemplo, queremos encontrar todas las instancias de » test1 » y reemplazarlas con » linuxhint «. Por lo tanto, nuestro comando sería: %s/test1/linuxhint , como se muestra a continuación.

Tenga en cuenta que en el resultado a continuación, logramos reemplazar todas las instancias de nuestra cadena de destino con la nueva cadena.

8. Formato de línea y archivo

Puede formatear cómo se organizan varias líneas en un texto utilizando las opciones del editor Vi.

  • J : El comando une la línea actual donde está el cursor con la línea siguiente, creando una línea conjunta.
  • ~: La opción de tilde cambia el caso de un carácter dado debajo del cursor.
  • <<: Desplaza la línea actual en un ancho de desplazamiento hacia la izquierda.
  • >>: Desplaza la línea actual en un ancho de desplazamiento a la derecha. Actúa como crear un espacio de pestañas.
  • :! comando : se usa cuando desea ejecutar un comando mientras está en la pantalla Vi. Por ejemplo, puede enumerar todos los contenidos en el directorio actual.

Aquí está la salida. Para volver a la pantalla Vi, presione la tecla enter.

  • CTRL + G : Muestra el nombre actual del archivo abierto y su estado.

En lo anterior, notamos que el nombre del archivo es «test1», y se muestran sus otros detalles.

  • :f new-filename – Reemplaza el nombre de archivo actual con el nuevo nombre de archivo.

Aquí hay un ejemplo de cómo cambiar el nombre del archivo a «file123».

Puede verificar el nombre de archivo modificado verificando su estado usando el comando anterior.

  • :cd nombre-directorio : el comando cambia el directorio actual al especificado.

Cambiemos el directorio a ~/Desktop .

Aquí está la salida.

  • :e nombre de archivo : el comando abre otro archivo dentro del editor Vi. Agregue el nombre del archivo que desea abrir; si el archivo no existe, se abrirá como un archivo nuevo.
  • :e # : Alterna entre los archivos abiertos.
  • :r filename : lee el archivo especificado y pega su contenido después del archivo abierto.

El siguiente ejemplo lee el contenido de «linuxhint» en el archivo abierto.

Aquí está la salida.

9. Modificación de la pantalla Vi

Hay varios comandos de configuración que se pueden usar para cambiar la apariencia de la pantalla Vi.

  • : set ai : establece la sangría automática para las líneas en el archivo.
  • :set noai : Desarma la sangría automática en el archivo.
  • :set nu : Muestra cada línea en el texto con números de línea.

  • :set ro : Cuando se ingresa, cambia el archivo abierto al modo de solo lectura.
  • :set term : Muestra el tipo de terminal para su editor. En el caso de abajo, podemos ver el tipo de terminal en la última línea.

Puede utilizar los comandos anteriores cuando trabaje con el editor Vi para editar su archivo.

Conclusión

El editor Vi se encuentra entre los editores amados por las excelentes funciones que ofrece a los usuarios. Hay mucho más que puede lograr usando Vi que usando otros editores. La clave es saber qué comando usar para lograr una cosa determinada. Esta guía ha presentado todo lo que debe saber sobre el uso del editor Vi en todos sus modos de edición. *