LINUX

Cómo usar el editor vi en Linux

Vi es el editor de texto estándar en sistemas Unix y Linux. Es un editor visual a diferencia de los editores de línea «ed» y «ex». vi puede ser un poco incómodo de usar al principio si es nuevo en él o ha estado usando otros editores avanzados como ‘gedit’. Pero una vez que te acostumbras, puede ser muy simple y rápido trabajar con vi.

En este tutorial, discutimos los modos de trabajo de vi y cómo usarlo. Pero al final, practicar te hará sentir cómodo y eficiente en vi.

Comenzando vi

Un archivo se puede editar usando vi escribiendo vi en la línea de comando y pasándole el nombre del archivo como argumento.

vi filename

Esto abrirá el archivo en el editor vi. Los cambios que realice en el archivo se almacenan en el búfer hasta que los guarde. Si el archivo proporcionado como argumento no existe, se creará un nuevo archivo con ese nombre si no se abandonan los cambios realizados.

Modos de trabajo de vi

El editor vi funciona en tres modos:

1. Modo de comando
2. Modo de inserción
3. modo ex o modo de última línea

El modo de comando es el modo predeterminado de vi. Cuando abre un archivo en vi, está en modo comando. Puede cambiar al modo de inserción y al modo ex solo desde el modo de comando. No puede ingresar directamente al modo ex desde el modo de inserción y viceversa. Las teclas que escriba en el modo de comando se interpretarán como comandos y no como parte del texto. El modo de inserción es el modo en el que las claves ingresadas son parte del documento. En el modo ex, se realizan tareas como guardar el archivo y salir del editor vi.

Moverse por el archivo

Mientras está en el modo de comando, puede mover el cursor de una posición a otra. Los comandos básicos de movimiento del cursor son:

h – izquierda
j – abajo
k – hasta
l – derecho

Significa que presionar la tecla ‘h’ mientras está en el modo de comando moverá el cursor a la izquierda de la posición actual. Estas 4 teclas mueven el cursor una letra a la vez. Pero moverse por un documento grande con estas teclas llevará mucho tiempo. Podemos movernos por palabra, frase o incluso por párrafo.

Por palabra:

w – adelantar una palabra.
b – hacia atrás una palabra.

Por oración:

) – Adelante una frase.
( – hacia atrás una oración.

Por párrafo:

} – Adelante un párrafo.
{ – un párrafo hacia atrás.

Hay algunos movimiento adicional comandos:

$ – moverse al final de la línea actual.
0 – moverse al principio de la línea actual.
gg – ir al principio del documento.
G – al final del documento.

Modo de inserción

Puede ingresar al modo de inserción desde el modo de comando mediante varios comandos. Una vez que esté en este modo, todas las teclas que presione aparecerán en el documento. El primer comando es ‘i’. Presionar ‘i’ en el modo de comando lo llevará al modo de inserción y podrá insertar antes de la posición del cursor.

a – comando cambiará el modo al modo comando y colocará el cursor delante de la posición actual, lo que le permitirá «agregar» después de la posición actual del cursor.

o – «abrirá» una nueva línea debajo de la línea actual y el cursor se colocará en esa línea. Esto también lo llevará al modo de inserción.

I se insertará al principio de la línea actual.
A se agregará al final de la línea actual.
O abrirá una nueva línea por encima de la línea actual.

Para volver del modo de inserción al modo de comando, use la tecla esc. Pulsar la tecla esc más de una vez no hará nada. En el modo de comando, la tecla esc no tiene ninguna acción. Además, no puede ingresar al modo ex directamente desde este modo.

Comandos de edición básicos

Puede realizar tareas como copiar, cortar y pegar desde el modo de comando.

Yank (copia)

y El comando se usa para copiar (o tirar) el texto. Pero el comando y no se copia por sí mismo. Debe especificar lo que desea copiar.

yy – línea de tirón
yw – palabra de tirón
yl – carta de tirón

De manera similar, también podemos copiar en cantidades mayores usando los comandos (,), {y}. Estos comandos tendrán su significado habitual como en los comandos de movimiento.

y( – frase de tirón detrás de la posición del cursor
y) – tira de la oración después de la posición del cursor
y{ – párrafo de tirón arriba
y} – párrafo de tirón a continuación

Eliminar (cortar)

Para cortar o borrar el texto, se usa el comando d. Similar al comando y (yank), el comando d también se usa con w, l, (,) etc.

dd – eliminar línea
dw – borrar palabra
dl – eliminar letra
d( – eliminar la oración detrás
d) – eliminar oración adelante
d{ – eliminar el párrafo anterior
d} – eliminar el párrafo siguiente

Pegar

El texto arrancado (copiado) o eliminado (cortado) se puede poner (o pegar) usando el comando ‘p’ o ‘P’. Dependerá de la naturaleza del texto cómo se pondrá el texto. Para letras y palabras, presionar ‘p’ colocará el texto después de la posición del cursor y presionar ‘P’ colocará el texto antes. Para una línea o un párrafo, ‘p’ se pegará debajo de la línea actual y ‘P’ lo colocará encima de la línea actual.

Deshacer

Si realizó un cambio en el documento por error, puede deshacerlo usando ‘u’ o ‘U’ mientras está en el modo de comando. Para deshacer el cambio más reciente, presione ‘u’ en el modo de comando. ‘U’ deshará todos los cambios en el archivo actual.

Repetir comandos n número de veces

Los comandos como copiar, eliminar y la mayoría de los otros comandos como los comandos de movimiento del cursor se pueden repetir n número de veces presionando ese número antes del comando. Por ejemplo, presionar 3yy en el modo de comando tirará (copiará) 3 líneas. 12dw eliminará 12 palabras de la posición actual del cursor. Del mismo modo, para avanzar 10 líneas, se puede utilizar 10). 6h moverá el cursor 6 posiciones hacia la izquierda hasta la posición actual del cursor.

Buscar en el documento

Puede buscar en el documento actual un patrón como puede hacerlo en «menos». En el modo de comando, presione / seguido del patrón a buscar. Por ejemplo, si desea buscar la palabra «kernel» en el documento, debe escribir «/ kernel» (sin comillas) y luego presionar enter. Esto buscará en el documento la frase ‘kernel’ debajo de la posición actual del cursor. Si desea buscar hacia arriba en el documento, use ‘?’ en vez de ‘/’. Si presiona «? Kernel» seguido de la tecla de retorno, se buscará en el documento hacia arriba la frase «kernel». Al presionar ‘n’ continuará la búsqueda de la siguiente coincidencia en la misma dirección (por ejemplo, hacia abajo para /) y ‘N’ buscará en la dirección opuesta.

Guardar (o no hacerlo) y salir

Cuando haya realizado todos los cambios que desea en el documento, es posible que desee guardar los cambios y / o salir del editor. Estas funciones se realizan en el modo ex. Para ingresar al modo ex desde el modo de comando, se usa: (dos puntos). Para guardar todos los cambios en el disco desde el búfer, se usa: w. : q saldrá del documento actual si el búfer no tiene cambios sin guardar. Para guardar los cambios y salir del documento, se combinan los dos comandos anteriores, es decir: wq guardará sus cambios y saldrá del editor vi.

Para salir sin guardar los cambios, use: q! mando. (Tenga en cuenta que debe presionar enter después de estos comandos del modo ex a diferencia de los comandos en el modo de comando). Los cambios también se pueden guardar en otro archivo (la opción guardar como). Para guardar los cambios en un archivo llamado myfile.txt (digamos), debe escribir:

:w myfile.txt

o

:wq myfile.txt

Comandos adicionales del modo ex

: set se puede utilizar para configurar el comportamiento del editor vi. Por ejemplo, para mostrar el número de línea junto con las líneas, use el siguiente comando de modo ex:

:set number

o

:se nu (for short)

Para desactivar los números de línea, utilice “: set nonumber” o “: se nonu”.

Puede ejecutar un comando desde vi, sin dejarlo usando «:![command]». Por ejemplo:

:!ls
:!date

Esto ejecutará los comandos ls y date respectivamente y mostrará el resultado en la pantalla. Al presionar enter, el control regresará al editor vi.

Conclusión

En este tutorial, aprendimos cómo usar el editor vi y el comando básico para editar en Linux. Espero que haya disfrutado de la lectura y deje sus sugerencias en la sección de comentarios a continuación.

Leer también:

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar