Entorno de Ejemplo — informe.log
Archivo de log que usaremos en todos los ejemplos. Créalo con nano /home/atu/informe.log o usa los comandos
cat << EOF que se indican más adelante.Usuario: atu · Sistema: Ubuntu 24.04 · Ruta base: /home/atu/
/home/atu/informe.log
1Inicio del sistema a las 08:00:00
2Carga de módulos de red exitosa.
3Conexión a la base de datos establecida.
4Tarea programada (backup.sh) iniciada.
5[ERROR] Fallo al escribir en disco: Permiso denegado.
6Reintentando la operación de escritura...
7Tarea programada (backup.sh) finalizada con errores.
8Uso de CPU: 45%.
9Uso de RAM: 60%.
10Limpieza de archivos temporales.
11Usuario 'maria' ha iniciado sesión.
12Usuario 'pedro' ha iniciado sesión.
13[AVISO] Memoria disponible baja (10%).
14Monitoreando el rendimiento del sistema.
15Fin del informe diario.
bash — crear informe.log
nano /home/atu/informe.log
# Escribe el contenido del archivo y guarda con Ctrl+O → Enter → Ctrl+X
# O añadir una nueva entrada de log:
echo "Nueva entrada de log a las 10:45:00" >> /home/atu/informe.log
Resumen de los 5 Comandos
Visión rápida de para qué sirve cada comando antes de entrar en detalle.
cat
Mostrar, unir y crear archivos. Sin paginación.
less
Leer archivos grandes. Navegación avanzada y búsqueda.
more
Paginación básica. Más antiguo y limitado que less.
head
Ver las primeras N líneas. Ideal para inspección rápida.
tail
Ver últimas N líneas. Monitoreo en tiempo real con -f.
1. cat — Concatenate
La forma más simple de mostrar el contenido completo de uno o más archivos en la salida estándar. También sirve para unir archivos y crear nuevos desde el teclado.
Sintaxis: cat [opciones] [archivo...]
| Opción | Descripción |
|---|---|
| -n | Numera todas las líneas de salida — útil para depuración o revisión de código. |
| > | Redirige la salida a un nuevo archivo. Si existe, lo sobrescribe. |
| >> | Añade la salida al final de un archivo existente (no sobrescribe). |
Ejemplos prácticos
1.1 Ver contenido completo
Muestra todas las líneas de golpe, sin paginación.
Muestra todas las líneas de golpe, sin paginación.
cat informe.log
1.2 Ver con numeración de líneas
Antepone el número de línea a cada una — ideal para scripts y depuración.
Antepone el número de línea a cada una — ideal para scripts y depuración.
cat -n informe.log
1.3 Unir dos archivos en uno
Combina parte1.txt y parte2.txt en un nuevo archivo completo.txt.
Combina parte1.txt y parte2.txt en un nuevo archivo completo.txt.
cat parte1.txt parte2.txt > completo.txt
1.4 Añadir contenido a un archivo existente
Agrega el contenido de resumen.txt al final de completo.txt sin sobrescribir.
Agrega el contenido de resumen.txt al final de completo.txt sin sobrescribir.
cat resumen.txt >> completo.txt
1.5 Crear un archivo rápidamente
cat espera entrada del teclado. Al pulsar Ctrl+D guarda el texto escrito.
cat espera entrada del teclado. Al pulsar Ctrl+D guarda el texto escrito.
cat > lista.txt
Pan
Leche
Ctrl+D
Pan
Leche
Ctrl+D
bash — crear notas.txt con heredoc
# Crear un archivo con contenido multilínea usando heredoc
cat << EOF > /home/atu/notas.txt
==================================================
DOCUMENTO DE PRUEBA Y NAVEGACIÓN
==================================================
Sección A: Introducción
-------------------------------------------------
Esta es la primera sección del archivo de notas.
El término CLAVE-1 se repite aquí.
Sección B: Tareas Pendientes
-------------------------------------------------
NOTA: Recordatorio de la reunión a las 14:00.
[ERROR] Fallo en la compilación del módulo X.
CLAVE-2 aparece aquí.
EOF
2. less — Visualización Paginada Avanzada
El mejor paginador para archivos grandes. Carga el archivo por partes, permite navegar hacia adelante y atrás, y buscar texto de forma eficiente — sin cargar todo en memoria.
Sintaxis: less [opciones] [archivo]
Teclas de navegación en less
Espacio / f
Avanza una pantalla completa hacia adelante.
b / Ctrl+B
Retrocede una pantalla completa.
↑ / ↓
Desplazamiento línea a línea.
g / G
g = inicio del archivo. G = final del archivo.
/patrón
Buscar texto hacia adelante. Pulsa n para la siguiente coincidencia.
?patrón
Buscar texto hacia atrás en el archivo.
n / N
Siguiente / anterior coincidencia de búsqueda.
q
Salir de less.
Ejemplos prácticos
2.1 Leer un archivo de log largo
Dentro de less:
Dentro de less:
/ERROR para buscar el error, n para repetir, q para salir.less /var/log/syslog
2.2 Mostrar numeración de líneas
Muestra el número de línea en el margen izquierdo — como un editor de texto.
Muestra el número de línea en el margen izquierdo — como un editor de texto.
less -N /etc/passwd
2.3 Visualizar salida de otro comando
Pagina la salida de dmesg, que suele ser muy larga, de forma cómoda.
Pagina la salida de dmesg, que suele ser muy larga, de forma cómoda.
sudo dmesg | less
💡 less vs more: Usa siempre
less sobre more — es más moderno, permite ir hacia atrás y tiene búsqueda integrada. El nombre "less" es un juego de palabras: "less is more".3. more — Visualización Paginada Simple
El precursor de less. Muestra el archivo pantalla por pantalla, pero no permite navegar hacia atrás con facilidad. Útil en sistemas sin less disponible.
Sintaxis: more [archivo]
Espacio
Avanza a la siguiente pantalla completa.
Enter
Avanza una línea.
q
Salir de more.
Ejemplos prácticos
3.1 Leer un archivo con avance por pantalla
Avanza con la barra espaciadora. Retrocede con b (limitado a una pantalla).
Avanza con la barra espaciadora. Retrocede con b (limitado a una pantalla).
more completo.txt
3.2 Mostrar mensajes de ayuda en pantalla
Muestra "---Más--- (Espacio: siguiente, q: salir)" en la barra inferior.
Muestra "---Más--- (Espacio: siguiente, q: salir)" en la barra inferior.
more -d completo.txt
3.3 Paginar la salida de cat
Encadena con cat para paginar un archivo muy largo de forma básica.
Encadena con cat para paginar un archivo muy largo de forma básica.
cat /etc/services | more
4. head — Ver las Primeras Líneas
Muestra por defecto las primeras 10 líneas de un archivo. Muy útil para inspección rápida del comienzo de logs y archivos de configuración.
Sintaxis: head [opciones] [archivo]
| Opción | Descripción |
|---|---|
| -n K | Muestra las K primeras líneas del archivo (por defecto K=10). |
| -c K | Muestra los K primeros bytes del archivo en lugar de líneas. |
Ejemplos prácticos
4.1 Ver las 10 primeras líneas (por defecto)
Muestra las líneas 1 a 10 de informe.log.
Muestra las líneas 1 a 10 de informe.log.
head informe.log
4.2 Ver las primeras 5 líneas
Muestra solo las líneas 1 a 5 — para revisar el inicio de un log.
Muestra solo las líneas 1 a 5 — para revisar el inicio de un log.
head -n 5 informe.log
4.3 Ver los primeros 50 bytes
Muestra los primeros 50 caracteres del archivo.
Muestra los primeros 50 caracteres del archivo.
head -c 50 informe.log
4.4 Usar con varios archivos
Muestra el nombre del archivo antes de sus primeras 3 líneas.
Muestra el nombre del archivo antes de sus primeras 3 líneas.
head -n 3 parte1.txt parte2.txt
4.5 Filtrar salida de un comando
Muestra solo las 10 primeras líneas de la lista de procesos activos.
Muestra solo las 10 primeras líneas de la lista de procesos activos.
ps aux | head -n 10
5. tail — Ver las Últimas Líneas
Muestra por defecto las últimas 10 líneas de un archivo. Con
-f monitoriza logs en tiempo real — imprescindible en administración de sistemas.Sintaxis: tail [opciones] [archivo]
| Opción | Descripción |
|---|---|
| -n K | Muestra las K últimas líneas del archivo (por defecto K=10). |
| -f | Follow — muestra las últimas líneas y se queda esperando nuevas entradas. Ideal para logs en tiempo real. Detener con Ctrl+C. |
| -F | Como -f, pero también reabre el archivo si es renombrado o rotado. Más robusto para logs con rotación automática. |
Ejemplos prácticos
5.1 Ver las últimas 10 líneas
Muestra las líneas 6 a 15 del informe.log (las 10 últimas).
Muestra las líneas 6 a 15 del informe.log (las 10 últimas).
tail informe.log
5.2 Ver las últimas 3 líneas
Muestra solo las líneas 13, 14 y 15.
Muestra solo las líneas 13, 14 y 15.
tail -n 3 informe.log
5.3 Monitoreo en tiempo real ⭐
Muestra las últimas líneas y se queda actualizado en vivo. Pulsa Ctrl+C para salir.
Muestra las últimas líneas y se queda actualizado en vivo. Pulsa Ctrl+C para salir.
tail -f /var/log/syslog
5.4 Seguir varios archivos a la vez
Monitoriza en vivo dos logs simultáneamente con indicador de qué archivo genera cada línea.
Monitoriza en vivo dos logs simultáneamente con indicador de qué archivo genera cada línea.
tail -f /var/log/syslog /var/log/auth.log
5.5 Filtrar salida de un comando
Muestra solo las últimas 15 líneas del resultado de dmesg.
Muestra solo las últimas 15 líneas del resultado de dmesg.
sudo dmesg | tail -n 15
⚡ tail -F vs tail -f: En producción usa siempre
-F en lugar de -f. La rotación automática de logs (logrotate) renombra el archivo y -f pierde el seguimiento, mientras que -F lo reabre automáticamente.Tuberías (Pipes) — Combinando Comandos
El operador | encadena la salida de un comando como entrada del siguiente. Permite combinaciones muy potentes para procesar texto.
Ver un rango de líneas
cat muestra todo → head -n 10 toma las 10 primeras → tail -n 3 muestra las últimas 3 de esas 10 = líneas 8, 9 y 10.cat informe.log | head -n 10 | tail -n 3
Paginar salida de dmesg
La salida del kernel suele ser muy larga — la paginamos con less para navegar con comodidad.
La salida del kernel suele ser muy larga — la paginamos con less para navegar con comodidad.
sudo dmesg | less
Unir y paginar dos archivos
Concatena archivo1.txt y archivo2.txt y los muestra paginados con less.
Concatena archivo1.txt y archivo2.txt y los muestra paginados con less.
cat archivo1.txt archivo2.txt | less
Procesos activos — primeros 10
ps aux genera una lista larga; head toma solo las 10 primeras.
ps aux genera una lista larga; head toma solo las 10 primeras.
ps aux | head -n 10
bash — ver rango de líneas con head + tail
# Ver las líneas 8, 9 y 10 del archivo
# 1. cat muestra todo → 2. head toma líneas 1-10 → 3. tail muestra las últimas 3
cat informe.log | head -n 10 | tail -n 3
# Ver las últimas 5 líneas de la salida de un comando
ps aux | tail -n 5
# Buscar líneas con ERROR y paginarlas
cat informe.log | grep ERROR | less
Tabla Resumen Comparativa
Cuándo usar cada comando de un vistazo.
| Comando | Propósito principal | Características clave | Cuándo usarlo |
|---|---|---|---|
| cat | Mostrar o unir archivos | Rápido, sin paginación, puede crear archivos | Archivos pequeños, unir ficheros, redirigir salida |
| less | Leer archivos grandes | Navegación bidireccional, búsqueda, no carga todo en RAM | Logs grandes, archivos de configuración, salidas largas |
| more | Paginación básica | Solo avanza, sin búsqueda avanzada | Sistemas sin less, uso básico rápido |
| head | Ver inicio del archivo | Primeras N líneas o bytes, soporta múltiples archivos | Inspección rápida del encabezado de logs y configs |
| tail | Ver final del archivo | Últimas N líneas, monitoreo en tiempo real con -f/-F | Actividad reciente en logs, monitoreo continuo |
Ejercicio Práctico Propuesto
Practica todos los comandos con archivos propios creados desde cero.
bash — preparar entorno de práctica
# Crear carpeta de práctica
mkdir /home/atu/documentos/lectura
cd /home/atu/documentos/lectura
# Crear tres archivos con contenido diferente
cat > archivo1.txt
# Escribe contenido y pulsa Ctrl+D
cat > archivo2.txt
# Escribe contenido y pulsa Ctrl+D
cat > registro.log
# Escribe varias líneas de log y pulsa Ctrl+D
🧪 Ejercicios a completar
- Usa
cat -n archivo1.txtpara ver el contenido numerado. - Une los tres archivos:
cat archivo1.txt archivo2.txt registro.log > todo.txt - Abre
todo.txtconless— busca una palabra con/palabray sal conq. - Usa
more todo.txty compara la experiencia conless. - Muestra las primeras 5 líneas:
head -n 5 todo.txt - Muestra las últimas 3 líneas:
tail -n 3 todo.txt - Prueba la tubería de rango:
cat todo.txt | head -n 10 | tail -n 3 - Abre
tail -f registro.logen una terminal y en otra escribe:echo "Nueva línea" >> registro.log— observa el efecto en tiempo real.
📌 Próximos pasos: Estos comandos se combinan con
grep, sort, awk y sed para un procesamiento de texto mucho más potente — tema de las siguientes guías de la serie.