Contenido de archivos y comparación

LinuxLinuxBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

¡Bienvenido a este laboratorio práctico sobre el trabajo con archivos en Linux! Si eres nuevo en Linux, no te preocupes. Te guiaremos paso a paso con cuidado. En este laboratorio, aprenderás cómo ver el contenido de los archivos, examinar partes específicas de los archivos y comparar archivos. Estas son habilidades fundamentales que te ayudarán a navegar y entender el sistema de archivos de Linux.

Objetivos

Al final de este laboratorio, podrás:

  • Usar cat para mostrar todo el contenido de un archivo
  • Usar head para ver el inicio de un archivo
  • Usar tail para ver el final de un archivo
  • Usar diff para comparar el contenido de archivos y directorios

Requisitos previos

  • Un sistema Linux (este laboratorio utiliza Ubuntu, pero la mayoría de las distribuciones de Linux funcionarán de manera similar)
  • Familiaridad básica con el uso de una computadora

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/VersionControlandTextEditorsGroup(["Version Control and Text Editors"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/BasicFileOperationsGroup -.-> linux/head("File Beginning Display") linux/BasicFileOperationsGroup -.-> linux/tail("File End Display") linux/VersionControlandTextEditorsGroup -.-> linux/diff("File Comparing") subgraph Lab Skills linux/cat -.-> lab-270251{{"Contenido de archivos y comparación"}} linux/head -.-> lab-270251{{"Contenido de archivos y comparación"}} linux/tail -.-> lab-270251{{"Contenido de archivos y comparación"}} linux/diff -.-> lab-270251{{"Contenido de archivos y comparación"}} end

Imprimir el contenido de un archivo

Primero, por favor abre una terminal en el escritorio O cambia a la pestaña de la terminal en el entorno del laboratorio.

Captura de pantalla de la ventana de la terminal

Una vez que tengas una terminal abierta, deberías ver un indicador de comando, que normalmente termina con el símbolo $. Aquí es donde ingresaremos nuestros comandos.

Ahora, usemos el comando cat para mostrar el contenido de un archivo:

  1. En la terminal, escribe el siguiente comando y presiona Enter:
cat /tmp/hello

Aquí, /tmp/hello es la ruta al archivo que queremos ver. /tmp es un directorio (carpeta) en tu sistema, y hello es el nombre del archivo en ese directorio.

  1. Después de presionar Enter, deberías ver el contenido del archivo:
Hi,
I am Labby!

Esto es todo lo que hay en el archivo /tmp/hello. El comando cat lo ha mostrado para nosotros en la terminal.

Mostrar el contenido de un archivo con números de línea

Ahora, usemos de nuevo el comando cat, pero esta vez agregaremos números de línea a la salida.

  1. En la terminal, escribe el siguiente comando y presiona Enter:
cat -n /tmp/hello

El -n aquí se llama una opción o una bandera (flag). Le dice a cat que numere todas las líneas de salida.

  1. Ahora deberías ver el contenido del archivo con números de línea:
     1 Hi,
     2 I am Labby!

Esto puede ser muy útil cuando estás trabajando con archivos más largos y necesitas hacer referencia a líneas específicas.

Imprimir las primeras líneas de un archivo

A continuación, usaremos el comando head. Como su nombre lo indica, head se utiliza para ver el principio o la "cabeza" de un archivo.

  1. En la terminal, escribe el siguiente comando y presiona Enter:
head -n1 /tmp/hello

Aquí, -n1 es una opción que le dice a head que muestre solo la primera línea. El 1 se puede cambiar por cualquier número para mostrar esa cantidad de líneas.

  1. Deberías ver esta salida:
Hi,

Esta es solo la primera línea del archivo. Por defecto, sin la opción -n1, head mostraría las primeras 10 líneas del archivo.

Ver los primeros bytes de un archivo

Ahora usaremos de nuevo el comando head, pero esta vez para ver un número específico de bytes desde el principio de un archivo.

  1. En la terminal, escribe el siguiente comando y presiona Enter:
head -c1 /tmp/hello

La opción -c1 le dice a head que muestre solo el primer byte (carácter) del archivo. Al igual que con -n, puedes cambiar el 1 por cualquier número para ver esa cantidad de bytes.

  1. Deberías ver esta salida:
H

Este es solo el primer carácter del archivo. En los archivos de texto, cada carácter suele ser de un byte.

Imprimir las últimas líneas de un archivo

Ahora pasemos al comando tail. Como puedes adivinar, tail es lo opuesto a head; muestra el final de un archivo.

  1. En la terminal, escribe el siguiente comando y presiona Enter:
tail -n1 /tmp/hello

Al igual que con head, la opción -n1 le dice a tail que muestre solo una línea, en este caso, la última línea del archivo.

  1. Deberías ver esta salida:
I am Labby!

Esta es la última línea de nuestro archivo. Sin la opción -n1, tail mostraría las últimas 10 líneas por defecto.

Ver los últimos bytes de un archivo

Similar a lo que hicimos con head, podemos usar tail para mostrar un número específico de bytes desde el final de un archivo.

  1. Primero, intentemos ver el último byte. En la terminal, escribe el siguiente comando y presiona Enter:
tail -c1 /tmp/hello

Puede que no veas ninguna salida. Esto se debe a que el último carácter probablemente sea un carácter de nueva línea, que es invisible.

  1. Intentemos ver los últimos dos bytes en su lugar. Escribe el siguiente comando y presiona Enter:
tail -c2 /tmp/hello
  1. Ahora deberías ver:
!

La opción -c2 le dice a tail que muestre los últimos 2 bytes (caracteres) del archivo. En este caso, está mostrando el signo de exclamación, que es el último carácter visible de nuestro archivo.

Comparar archivos

Ahora aprenderemos cómo usar el comando diff para comparar dos archivos y ver las diferencias entre ellos.

  1. Primero, asegúrate de estar en el directorio (carpeta) correcto. Escribe el siguiente comando y presiona Enter:
cd ~/project

Esto cambia nuestro directorio actual al directorio "project" en nuestro directorio de inicio. El símbolo ~ es un atajo para tu directorio de inicio.

  1. Ahora, comparemos dos archivos. Escribe el siguiente comando y presiona Enter:
diff file1 file2

Esto le dice a diff que compare el contenido de file1 y file2.

  1. Deberías ver una salida similar a esta:
1c1
< this is file1
---
> this is file2

Esta salida nos está diciendo que la línea 1 de file1 es diferente de la línea 1 de file2. El símbolo < muestra el contenido de file1, y el símbolo > muestra el contenido de file2.

Comparar directorios

Finalmente, usemos el comando diff para comparar directorios completos.

  1. En la terminal, escribe el siguiente comando y presiona Enter:
diff -r ~/Desktop ~/Code

La opción -r le dice a diff que compare recursivamente también los subdirectorios. ~/Desktop y ~/Code son las rutas de los dos directorios que estamos comparando.

  1. Puedes ver una salida similar a esta:
Only in /home/labex/Desktop: code.desktop
Only in /home/labex/Desktop: gedit.desktop
Only in /home/labex/Desktop: gvim.desktop
Only in /home/labex/Desktop: xfce4-terminal.desktop

Esta salida muestra que el directorio Desktop contiene cuatro archivos que no están en el directorio Code.

Resumen

¡Felicidades! Has completado el laboratorio (lab) sobre Contenido de archivos y Comparación. Repasemos lo que has aprendido:

  1. Has usado cat para ver el contenido completo de un archivo.
  2. Has aprendido cómo usar cat -n para ver el contenido de un archivo con números de línea.
  3. Has usado head para ver el inicio de un archivo, tanto por líneas como por bytes.
  4. Has usado tail para ver el final de un archivo, tanto por líneas como por bytes.
  5. Has aprendido cómo usar diff para comparar el contenido de archivos.
  6. Finalmente, has usado diff -r para comparar directorios completos.

Estos comandos son herramientas fundamentales en Linux. A medida que sigas trabajando con Linux, encontrarás que usas estos comandos con frecuencia para inspeccionar y comparar archivos y directorios.

Recuerda, si alguna vez olvidas cómo usar un comando, siempre puedes escribir man seguido del nombre del comando (por ejemplo, man cat) para ver la página del manual de ese comando. Esto te dará información detallada sobre todas las opciones disponibles para cada comando.

Sigue practicando con estos comandos en diferentes archivos y directorios para sentirte más cómodo con ellos. ¡Cuanto más los uses, más naturales se sentirán!