-->

Introducción al Editor vi/vim en Linux

Objetivo:

Aprender a abrir y crear ficheros de texto con el editor vi (o su versión mejorada vim), comprender la diferencia entre el modo comando y el modo edición, y practicar los movimientos básicos del cursor dentro de un documento.

Escenario:

  • Herramientas: Terminal de Linux y un sistema Debian o basado en Debian, con el editor vi o vim instalado.
  • Conceptos clave: editor de texto en modo carácter, modo comando, modo edición, movimiento por palabras y por párrafo, entornos sin interfaz gráfica.

Instrucciones:

Fase 1: Apertura del editor y creación de un fichero

  • Comprueba qué versión del editor tienes instalada:
  • vi --version
  • Accede a tu directorio personal o a Documentos y crea un nuevo fichero de texto abriéndolo directamente con vi (si el fichero no existe, se creará al guardarlo):
  • cd Documentos
    vi practica_vi.txt
  • Observa la barra de estado inferior y localiza el nombre del fichero, el número de líneas y el número de caracteres.

Fase 2: Modo comando frente a modo edición

  • Estando dentro de vi, sin pulsar ninguna tecla de inserción, intenta escribir algunas letras cualquiera y observa que no aparecen como texto, sino que el editor las interpreta como comandos.
  • Sal del editor sin guardar cambios pulsando Esc y a continuación:
  • :q!
  • Vuelve a abrir el mismo fichero y entra ahora en modo edición pulsando la tecla i (insertar).
  • Escribe un pequeño párrafo de dos o tres frases cualquiera.
  • Vuelve al modo comando pulsando Esc.

Fase 3: Guardado del fichero

  • Estando en modo comando, guarda los cambios realizados sin salir del editor:
  • :w
  • Comprueba desde otra información en pantalla (o consultando la barra de estado) que el fichero se ha guardado correctamente.
  • Guarda y sal del editor a la vez:
  • :wq
  • Verifica desde la terminal que el fichero existe y contiene el texto escrito:
  • cat practica_vi.txt

Fase 4: Movimiento básico por el documento

  • Abre de nuevo el fichero con vi y, en modo comando, practica los movimientos clásicos de este editor:
  • h   (izquierda)
    j   (abajo)
    k   (arriba)
    l   (derecha)
  • Comprueba que las teclas de flecha del teclado también funcionan para desplazarte por el texto.

Fase 5: Movimiento por palabras y por párrafo

  • Sitúa el cursor al principio de una palabra y utiliza w para avanzar palabra por palabra, observando cómo salta el cursor.
  • Utiliza b para retroceder palabra por palabra.
  • Sitúa el cursor en cualquier punto de una línea y pulsa $ para saltar al final de esa línea o párrafo.
  • Desde ahí, pulsa ^ (acento circunflejo, mayúscula del 6) para volver al principio de la línea o párrafo.
  • Sal del editor guardando los cambios con :wq.

Preguntas de reflexión:

  1. ¿Por qué es importante conocer un editor de texto en modo carácter como vi si se va a trabajar administrando servidores Linux?
  2. ¿Qué diferencia existe entre vi y vim?
  3. ¿Qué ocurre si abrimos con vi el nombre de un fichero que todavía no existe?
  4. ¿Qué diferencia hay entre el modo comando y el modo edición en vi?
  5. ¿Qué sucede si, estando en modo comando, intentamos escribir texto directamente sin haber pulsado antes una tecla como i?
  6. ¿Qué información suele mostrar la barra de estado inferior de vi?
  7. ¿Para qué sirven las teclas h, j, k y l, y por qué existen si hoy en día se pueden usar las flechas del teclado?
  8. ¿Qué diferencia hay entre las teclas w y b a la hora de moverse por el texto?
  9. ¿Qué función cumplen el símbolo $ y el símbolo ^ dentro de vi?
  10. ¿Por qué algunos de los atajos de vi pueden resultar más difíciles de localizar en un teclado en español que en uno en inglés?
Haz clic aquí para ver las soluciones y explicaciones

1. ¿Por qué es importante conocer vi?

Porque los servidores Linux utilizados a nivel profesional habitualmente no incluyen entorno gráfico y se administran completamente en modo comando, por lo que resulta imprescindible saber editar ficheros y scripts sin depender de un editor gráfico.


2. ¿Diferencia entre vi y vim?

vim es una versión mejorada de vi, con más funcionalidades orientadas a la programación y al desarrollo, pero los comandos básicos son prácticamente idénticos en ambos editores.


3. ¿Qué ocurre si el fichero no existe?

vi procede a crear un nuevo fichero de texto vacío con ese nombre, que se guardará en disco la primera vez que se ejecute el comando de guardado.


4. ¿Diferencia entre modo comando y modo edición?

En modo comando, las teclas pulsadas se interpretan como órdenes (moverse, borrar, guardar, etc.), mientras que en modo edición cualquier tecla pulsada se inserta como texto dentro del documento.


5. ¿Qué pasa si escribimos en modo comando sin pulsar i?

El editor interpreta cada letra como un comando y las ejecuta, en lugar de insertarlas como texto, lo que puede provocar acciones no deseadas sobre el documento.


6. ¿Qué muestra la barra de estado?

Habitualmente muestra el nombre del fichero con el que se está trabajando, el número de líneas y el número de caracteres del documento.


7. ¿Para qué sirven h, j, k y l?

Permiten mover el cursor izquierda, abajo, arriba y derecha respectivamente. Existen porque vi se diseñó en una época en la que los teclados de los terminales no disponían de teclas de flecha; hoy en día su uso es prácticamente anecdótico, ya que las flechas del teclado cumplen la misma función.


8. ¿Diferencia entre w y b?

w desplaza el cursor hacia adelante, palabra por palabra, mientras que b lo desplaza hacia atrás, también palabra por palabra.


9. ¿Qué hacen $ y ^?

El símbolo $ lleva el cursor al final de la línea o párrafo actual, mientras que el símbolo ^ lo devuelve al principio de dicha línea o párrafo.


10. ¿Por qué son más difíciles de localizar algunos atajos en teclado español?

Porque los atajos de vi se diseñaron pensando en la disposición de un teclado en inglés, y algunos símbolos, como el acento circunflejo, ocupan posiciones distintas o menos evidentes en un teclado configurado en español.


Ficha de Laboratorio: Introducción al Editor vi/vim en Linux

Instrucciones de entrega:

  1. Rellena los campos y responde en este formulario desde tu navegador.
  2. Pulsa el botón de imprimir al final de la página.
  3. Selecciona "Guardar como PDF" en el diálogo de impresión.
  4. Entrega el archivo PDF en el aula virtual.

Alumno/a:      Fecha:      

Grupo:


Completa la ficha realizando las siguientes actividades:

  1. Crea un fichero nuevo llamado practica_vi.txt abriéndolo directamente con vi.
    Escribe el comando utilizado:

    Describe qué información mostraba la barra de estado al abrir el fichero:
  2. Comprueba qué ocurre al escribir en modo comando sin haber pulsado antes la tecla de inserción.
    Explica qué sucedió al intentar escribir texto directamente:
  3. Entra en modo edición con la tecla i y escribe un pequeño párrafo.
    Copia aquí el párrafo que escribiste:

    Explica cómo volviste al modo comando y cómo guardaste el fichero:
  4. Comprueba desde la terminal que el fichero se guardó correctamente.
    Escribe el comando utilizado:

    Copia aquí la salida obtenida:
  5. Practica el movimiento básico del cursor con h, j, k y l, y con las flechas del teclado.
    Explica con tus palabras qué hace cada una de las cuatro teclas:
  6. Practica el movimiento por palabras (w, b) y por línea o párrafo ($, ^).
    Explica la diferencia entre usar w y b:

    Explica la diferencia entre usar $ y ^: