En este capítulo del tutorial te voy a mostrar algunos de los editores y visualizadores que tienes a tu disposición para trabajar con archivos de texto. Realmente el mundo tanto de editores como de visores es muy, pero que muy amplio, y aquí solo trato de darte una visión general. No se trata de adentrarme en ninguno de ellos, porque esto daría para un capítulo del tutorial por si mismo. Lo que quiero es que, veas que opciones tienes, y que tu mismo, te decidas con que visores y editores para terminal quedarte, y porque.
En mi caso, al igual que seguramente tu, he ido cambiando de editor con el paso de los años. No creo que uno sea mejor que otro. Al igual que sucede con el procesadores de textos, como puede ser Writer. Sin lugar a dudas, es casi, mas importante, que tu le saques el máximo partido, que todas las opciones que el editor te pueda ofrecer. Y es que, por muchas opciones y características que tenga, si no las conoces, es como si no las tuviera.
VISORES Y EDITORES PARA EL TERMINAL
Es muy probable, a la par de lícito que te preguntes que sentido tiene utilizar un editor o visor en el terminal. Si solo utilizas tu portátil, a lo mejor no tiene ningún sentido, y recalco lo de a lo mejor. Pero desde luego si trabajas con servidores remotos, esto tiene todo el sentido del mundo. ¿Como vas a editar la configuración de una aplicación si no es en el terminal?.
Y llegados a este punto, si estás leyendo este artículo, es muy probable que tengas un Raspberry Pi u otro placa de este estilo. Y si no la tienes seguro que se te ha pasado por la cabeza comprarlo (no lo dudes, compra la Raspbery). En ese caso, si lo vas a utilizar como servidor, cosa que te recomiendo encarecidamente, seguro que tarde o temprano necesitarás utilizar un visor, y probablemente un editor de los que te comentaré en este artículo.
Empezaré por los visores. Algunos ya los viste en el capítulo sobre procesar texto, así que los agruparé en un solo apartado, mientras que a more y less, les dedicaré algo mas.
VISORES
HEAD, TAIL Y CAT
Las dos primeras herramientas te permiten extraer n
líneas de un archivo. Mientras que head, te permite extraer las n
primeras, tail, hace lo propio con las n
últimas. No solo te permite extraer un número de líneas, sino que según los parámetros que les pases también puedes extraer, bytes. Además, tal y como mencioné en el anterior artículo, tail
te permite ver en tiempo real la evolución de un archivo.
Por otro lado cat
, te permite mostrar por pantalla todo el contenido de un archivo. Si rediriges la salida estándar a un archivo, también podrás guardarlo o añadirlo a ese archivo.
MORE
Sobre more
todavía no había escrito nada en este tutorial. Esta herramienta tiene la funcionalidad de paginar la salida. Es decir, si ejecutas more archivo.txt
, te mostrará el contenido de archivo.txt
pero a golpes. De esta manera cada vez que pulses la barra espaciadora
aparecerá en pantalla una parte de ese archivo, de forma que esa parte, ocupará toda la pantalla. Mientras que si pulsas la tecla Enter
, solo se mostrará una nueva línea.
No solo esto, si no que también more
te permite realizar búsquedas dentro del archivo que estas viendo. Para realizar una búsqueda utiliza /
, seguido por el patrón de búsqueda.
LESS
less
es como more
pero con mucho mas potencial. Sobre less ya escribí un extenso artículo, que te recomiendo encarecidamente que leas. Pero, quiero indicarte algunos aspectos interesantes que han convertido a esta herramienta en mi visor, por defecto,
- Permite la navegación por el documento.
- Puedes hacer búsquedas mediante patrones
- Te permite cargar varios archivos
Respecto a la navegación, indicarte, que puedes utilizar los cursores para desplazarte por el documento. Y respecto a las búsquedas, puedes hacer búsquedas, tanto desde el principio del documento como desde el final.
ZLESS Y XZLESS
Estos son los complementos perfecto de la herramienta anterior. Se trata de herramientas que te permiten hacer lo mismo que less
, pero con archivos comprimidos. Se trata de una solución óptima para el análisis de archivos de registro log
que han sido rotados, y que están comprimidos.
En el caso de zless puedes utilizarlo con archivos comprimidos con gz
o zip
. Mientras que el caso de xzless
se utiliza para archivos comprimidos con xz
o lzma
.
EDITORES
Editores hay muchos, pero creo, que los mas populares son los que puedes leer en los siguientes apartados. Insistirte en que no se trata de profundizar en ellos, sino ver en unas pocas pinceladas las opciones que te ofrecen, para que puedas dicidirte por uno, o por otro.
NANO
Sin lugar a dudas este ha sido mi editor de texto para el terminal durante años, hasta que llegó el siguiente, Vim
para sustituirle. De hecho, te recomiendo que leas el artículo sobre como configurar nano. No solo te mostrará las posibilidades de personalización de esta herramienta, sino que, en ese artículo encontrarás los principales atajos de teclado.
Como te indico en el propio artículo, sobre porque utilizar nano frente a vim, indicarte que es cuestión del tiempo que estés en el terminal, y si tienes la necesidad de editar archivos a menudo. Como te digo, inicialmente, para mi era mucho más cómodo utilizar nano, pero actualmente, me encuentro mas seguro y cómodo con Vim. Y me encuentro cómodo con Vim, a pesar de que todavía no lo he exprimido suficientemente.
nano
es un editor muy sencillo de utilizar. Además te muestra los principales atajos de teclado en el propio pie del editor, con lo que esto te vendrá de perilla, al menos al principio.
JED
Es un editor de texto realmente liviano, disponible para diferentes plataformas. Aunque inicialmente está pensado como un potente editor de código diseñado para desarrolladores, lo cierto es que gracias a su navegación por menús, hace la experiencia de usuario realmente amigable.
Precisamente esta característica de navegación por menús, lo hace realmente ideal para los mas noveles, puesto que no necesitas de conocer atajos de teclado, ni combinaciones de teclas, ni nada parecido. Simplemente con pulsar F10
(que te indica en la propia pantalla), ya acedes a los menús.
jed
no viene instalado por defecto, pero instalarlo es tan sencillo como ejecutar lo siguiente en un terminal,
sudo apt install jed
MICRO
Otro editor realmente sencillo es micro. Sin embargo, si no lo conoces, nada mas abrir el editor probablemente te asustarás porque no verás absolutamente nada. Eso si, puedes empezar a escribir de inmediato… pero ¿como guardar y salir?
Lo primero es decirte que micro
es otra de esas herramientas de las que a mi me gustan, cargadas de un brutal elenco de atajos de teclado. Todo un conjunto de atajos de teclado, con los que podrás hacer casi cualquier cosa que te puedas imaginar. Por supuesto, estos atajos de teclado, son perfectamente configurables por ti.
Por otro lado, también dispone de comandos. Para acceder a la línea de comandos tienes que empezar por utilizar el atajo de teclado Ctrl+E
. Probablemente el atajo de teclado mas importante de este editor. Así, algunos comandos a los que puedes acceder desde la lìnea de comandos son,
quit
para salir de micro.save
te permitirá guardar el archivo.replace
con el que sustituir palabrasopen
para abrir un archivo.
VI/VIM
Vi y Vim, son editores de texto para el terminal, aunque también puedes encontrar versión para escritorio gVim
. Sin lugar a dudas, Vim ocupa un lugar destacado en el apartado de editores y visores para el terminal. Las principales características de vi sobre vim, son las siguientes,
- En Vim tienes ilimitados hacer y deshacer
- Vim está disponibles en otros sistemas operativos mas allá del propio Linux.
- No solo puedes utilizar Vim en un terminal, sino que además encontrarás versiones de escritorio, como te he mencionado anteriormente.
- Dispones de un modo de compatibilidad con Vi, de forma que es posible hacer actuar a Vim como si fuera Vi.
Una vez ya conoces las diferencias básicas de Vim y Vi, indicarte que yo me referiré en exclusiva a Vim, porque con Vi solo trabajo de forma puntual.Dicho esto, ¿que es Vim? Vim es un editor de texto, que apareció por primera vez en 1991, hace ya unos pocos de años. La principal característica de Vim, y es lo primero que tienes que entender de Vim, es que tiene diferentes modos.
LOS MODOS DE VIM
En cada uno de estos modos, puedes hacer diferentes acciones. Así, los modos principales son,
- comandos o también conocido como modo normal. Este el modo con el que se inicia Vim. Si entras por primera vez en Vim, te llamará la atención, que no puedes editar nada… Bueno no puedes editar, salvo que pulses alguna tecla que te permita editar. Básicamente, en este modo, puedes,
- desplazarte dentro del texto utilizando las flechas de desplazamiento o las teclas
h
,j
,k
yl
. Estos son solo algunos atajos de teclado. Hay muchos, pero que muchos mas, para desplazarte de casi cualquier manera… - pasar al modo de inserción utilizando las teclas
a
,i
,insertar
y algunas mas. - borrar filas utilizando
dd
- deshacer utilizando
u
.
- desplazarte dentro del texto utilizando las flechas de desplazamiento o las teclas
- inserción. Este es el modo que esperarías encontrar en un editor de textos. Aquí simplemente puedes escribir. Si estás en el modo comandos y quieres pasar al modo de inserción utiliza
i
oinsertar
como he dicho antes. Si ya estás en el modo inserción, y pulsas de nuevoinsertar
en lugar de añadir, lo que harás será reemplazar. Para salir del modo de inserción utiliza la teclaEscape
. - línea de órdenes. Este modo te permite realizar operaciones mas o menos complejas. Para entrar en este modo, tienes que utilizar
:
. Una vez dentro de este modo, puedes hacer operaciones como,q!
salir sin guardarwq
guardar y salir- buscar y reemplazar texto
- visual. Con este modo podrás seleccionar texto. Para entrar en este modo desde el de comandos utiliza
v
para la selección de líneas oCtrl+V
para la selección por columnas. Una vez seleccionado lo que quieres, para copiar, utilizay
y para pegarp
. También puedes borrar cond
.
- selección. Este modo te permite seleccionar texto por caracteres o líneas. Para el primer caso utiliza
g+h
, mientras que para el segundo utilizag+H
. - ex. Este último modo, es muy similar al de línea de órdenes, pero después de la ejecución de un comando, se continua en este modo. Para entrar en este modo tienes que utilizar el atajo de teclado
Mayúsculas+Q
. Para salir de este modo tienes que escribirvi
.
SOBRE VIM/VI
Sin lugar a dudas, Vim
presenta una importante curva de aprendizaje. No es ni mucho menos tan sencillo como puede ser Nano. Vim tiene un gran potencial, pero es necesario que lo conozcas en profundidad para sacarle todo el partido que se le puede sacar. Además, Vim
, tiene todo un mundo de complementos que te permitirán adaptarlo perfectamente a tus necesidades.
Si quieres ver todas las posibilidades de complementos, integraciones, comandos, etc te recomiendo que te pases por VimAwesome. Esto es todo un mundo, así que te recomiendo mucha paciencia.
EMACS
No voy a entrar en emacs
, por que, básicamente no lo utilizo, y por ahora no quiero adentrarme en ese mundo. Un mundo todo lleno de posibilidades, y del que probablemente no consiga salir en el caso de que me adentre en él.
Sin lugar de los visores y editores para el terminal emacs se merece no solo un tutorial entero, sino mas bien una web entera.
CONCLUSIONES SOBRE VISORES Y EDITORES PARA EL TERMINAL
Como ves, tienes diferentes opciones a elegir de visores y editores para el terminal. Solo he comentado algunas de todo el mundo que hay ahí fuera, pero con esto ya te haces una idea de todo lo que puedes hacer.Ahora ya depende de ti, de lo que tu quieras hacer y donde te quieras adentrar… ánimo y a probar, sobre todo probar, probar y probar.
Más información,
Listado de capítulos
Estos son todos los capítulos del tutorial El terminal,
- 2.- La línea de comandos
- 3.- Navegar entre archivos
- 4.- Gestionar archivos en Linux
- 5.-Propietario y permisos
- 6.-Comodines y expresiones regulares
- 7.-Filtros: AWK, GREP, SED Y CUT
- 8.-Procesar texto con head, tail, cat, split…
- 9.- Buscar archivos en el terminal
Articulo localizado en El Atareao