Si tengo un archivo de texto que quiero leer ¿qué debería de hacer para lograrlo? Simple: abro mi editor de texto favorito y problema resuelto. Ahora, ¿qué sucede si estoy trabajando en la terminal y quiero ver rápidamente el contenido de algún archivo? Salir de la terminal (o minimizarla) y acceder al editor de textos ya no suena tan buena idea, esas pequeñas acciones toman tiempo y si queremos revisar varios archivos seguro que se nos irán varias unidades valiosas de tiempo en el seleccionar algún archivo y cargarlo, seleccionar otro y cargarlo, seleccionar otro y…
En esta nota hablaremos sobre unos útiles comandos que precisamente nos permitirán visualizar el contenido de un archivo sin tener que abrir ningún programa gráfico. No importa que cantidad de información alberguen nuestros archivos, estos comandos nos mostrarán toda o parte de ella. Vamos allá entonces.
Conociendo el tipo de archivo
Antes que cualquier otra cosa, visitemos primero el comando file
. Si queremos ver el contenido de algún archivo de texto, es necesario que este sea de este tipo, ¿por qué? Porque de esto dependerá de si lo que veremos en pantalla será texto común y legible o un montón de símbolos extraños. Uno podría pensar que basta con observar que la extensión del archivo sea .txt
pero, a decir verdad, un archivo de texto puede llevar cualquier tipo de extensión, por ejemplo, los archivos que se utilizan para guardar los mensajes que genera un programa (conocidos como log files) suelen contar con la extensión .log
.
Veamos dos archivos de ejemplo para utilizar este comando, uno será un archivo de texto y otro será un archivo de imagen:
Como puedes apreciar, file
nos indica correctamente qué tipo de archivo es cada uno. Para el archivo de texto nos despliega ASCII text que básicamente significa que el archivo contiene texto con caracteres «ASCII». file
puede recibir cualquier número de parámetros, de esta forma podemos saber (usando una única línea) el tipo de varios archivos.
Concatenando archivos
Recordando la nota no. 4 de esta serie, vimos de forma rápida el comando cat
que nos permitía desplegar el contenido de un archivo de texto directamente en pantalla. Si colocamos varios parámetros, cat
concatenará los contenidos y nos los mostrará todos de una vez (como si de un solo archivo se tratara). Como curiosidad, veamos qué se nos muestra en pantalla al usar los dos archivos del apartado anterior:
Como habíamos comentado, el archivo de texto nos muestra información legible y la imagen solo consta de símbolos extraños.
Pasemos ahora a conocer dos opciones para el comando cat
que pueden resultar muy útiles en algunas circunstancias. Tomemos como ejemplo un código fuente, de este queremos que, además del contenido, se nos despliegue también el número de cada línea; podemos lograr esto simplemente añadiendo -n
:
De esta manera a cada línea del archivo le antecederá un número, el cual, en este caso en particular, nos sería de gran ayuda si estábamos buscando lo que existe en la línea número X.
Si quisiéramos que se nos muestre un número pero solo en aquellas líneas que contengan texto, basta con añadir la opción -b:
Menos es más
Como acabamos de ver, cat
es una herramienta muy útil pero tiene un pequeño inconveniente, si el archivo que queremos leer tiene mucha información, cat
nos mostrará toda esa información de una vez, sin importarle detenerse en algún momento para que vayamos leyendo cada parte.
less
es un comando muy útil que permite desplegar el contenido de un archivo pero con la gran ventaja de detenerse cuando el texto ha llenado la pantalla, si esto sucede basta con presionar la letra D
para seguir leyendo el archivo, o presionar U
si queremos regresar. Para salir del modo lectura queda presionar la tecla Q
y volveremos a nuestro prompt.
Veamos cómo funciona este comando utilizando un archivo que contiene los números del 1 al 4000:
Desde la cabeza hasta la cola
Existen otro tipo de situaciones en que no queremos ver todo el archivo sino solo una parte de él; si esta parte se encuentra al inicio o al final del archivo, estamos de suerte.
El comando head
nos permitirá conocer las primeras líneas del archivo que le pasemos como parámetro, por defecto las primeras 10 líneas. Por otra parte, el comando tail
nos mostrará las últimas líneas del archivo que elijamos, igual las última 10 líneas por defecto. Utilicemos el archivo de números para demostrar cómo funcionan estas instrucciones:
Si queremos cambiar el número de líneas que se nos presenten, en lugar de las 10 que mencionamos, basta con colocar -n #
donde #
será el numero de líneas que queremos desplegar. Una forma más corta de hacerlo es únicamente colocar -#
y obtendremos el mismo resultado:
Para terminar
En esta nota aprendimos como visualizar el contenido de un archivo con la ayuda de unos prácticos comandos. Ya sea que quisiéramos ver toda la información, o solo una parte de ella, ahora tenemos las herramientas para lograrlo y todo desde la comodidad de la misma terminal.
Espero estas notas sigan siendo de tu agrado y nos ayudes a compartirlas con más personas que gusten conocer de todas estas facilidades que nuestra computadora nos otorga. Te espero en la siguiente nota, cualquier comentario que tengas no dudes en dejarlo y con gusto te atenderé.
Hasta la próxima.
Sobre algunos elementos de la imagen destacada: Designed by Dooder / Freepik