A veces estamos realizando tareas de mantenimiento en algún viejo servidor GNU/Linux y nos pasa algo parecido a lo siguiente cuando tratamos de editar un archivo:

# nano /etc/sysconfig/network-scripts/ifcfg-eth1
bash: nano: command not found

Esto significa que el sistema no tiene instalado el editor nano. Si tenemos suerte podemos utilizar mcedit (por ejemplo si es un viejo RedHat o derivado) pero es nada más que una excusa para evitar el viejo y conocido vi.

A pesar de ser un editor de texto odiado por muchos y amado por otros "chapados a la antigua" la edición de archivos utilizando vi es sencilla, el problema radica en que generalmente nadie conoce o recuerda sus comandos básicos.

Veamos como editar el archivo utilizando vi:

# vi /etc/sysconfig/network-scripts/ifcfg-eth1

Al abrir el archivo con vi lo primero que se observa es el contenido (relleno con caracteres ~ hasta completar la pantalla). En este caso se trata de un archivo de configuración de una interfaz de red:

DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.10
NETMASK=255.255.255.0
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"/etc/sysconfig/network-scripts/ifcfg-eth1" 5L, 82C

La última línea muestra el nombre del archivo seguido por la cantidad de líneas (5L) y caracteres (82C). Con las teclas direccionales es posible moverse por el documento. Es posible buscar patrones mediante el comando / (lo mismo que se hace en nano utilizando el comando Ctrl+W), es decir el mismo comportamiento que el comando man.

Para comenzar a editar se debe presionar la [Insert]. Verán que la última línea de la pantalla cambia y aparece la leyenda -- INSERT -- para indicar que estamos en el modo edición:

DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.10
NETMASK=255.255.255.0
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
-- INSERT --

En el modo edición es posible realizar modificaciones en el archivo. Para finalizar la edición se debe presionar la tecla [Esc].

Para cerrar vi (es necesario salir del modo edición) se debe utilizar alguna de las siguientes secuencias de comandos:

  • Si no se ha editado el archivo:
    :q
  • Si se ha editado el archivo y se desea guardar:
    :wq
  • Si se ha editado el archivo pero no se desea guardar (descartar los cambios):
    :q!

Por ejemplo:

DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.11
NETMASK=255.255.255.0
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:wq

Con esto tienen lo básico para salvar las papas cuando se necesita modificar un archivo y sólo se dispone del editor vi. Para aprender a utilizar a fondo vi es posible acceder al manual completo ejecutando vimtutor.


Tal vez pueda interesarte


Compartí este artículo