CodeAventura
Linux
▸Texto y Redirección▸Manipular texto: sort, uniq y wc

Misión

TerminalTema: Vintage
Manipular texto: sort, uniq y wc
12
/
17

Manipular texto: sort, uniq y wc

Procesar datos como un profesional

La terminal brilla cuando necesitas procesar texto. Ordenar listas, contar elementos, eliminar duplicados — operaciones que en una hoja de cálculo requieren clics y menús, en la terminal se hacen con un comando.

wc — Contar todo

wc (word count) es tu contador universal:

Cuenta líneas. El flag -l es el más usado.

Cuenta palabras.

Cuenta caracteres (bytes).

Sin flags, wc muestra las tres cifras a la vez: líneas, palabras y caracteres.

sort — Ordenar líneas

sort ordena las líneas de un archivo alfabéticamente:

Para ordenar en orden inverso:

Para ordenar numéricamente (que 10 vaya después de 9, no después de 1):

Sin -n, sort ordena como texto: "1", "10", "2", "20", "3"... Con -n ordena como números: 1, 2, 3, 10, 20.

uniq — Eliminar duplicados

uniq elimina líneas duplicadas consecutivas:

La palabra clave aquí es consecutivas. Si tienes:

uniq no eliminará la segunda "manzana" porque no está justo después de la primera. Por eso siempre debes usar sort antes de uniq:

Primero ordena (poniendo las líneas iguales juntas) y luego elimina duplicados. Este es un patrón clásico de Linux.

Con -c, uniq además cuenta cuántas veces aparece cada línea:

El pipeline clásico

Una de las combinaciones más poderosas de la terminal:

  1. cat muestra el contenido
  2. sort ordena alfabéticamente (agrupa iguales)
  3. uniq -c elimina duplicados y cuenta ocurrencias
  4. sort -rn ordena por número de ocurrencias, de mayor a menor

El resultado: un ranking de las líneas más frecuentes. Útil para analizar logs, contar errores, encontrar patrones.

cut — Extraer columnas

Si tus datos tienen columnas separadas por un carácter, cut extrae la que necesitas:

  • -d: define : como delimitador
  • -f1 selecciona el primer campo

Tu desafío

Tienes un archivo frutas.txt ya preparado con frutas repetidas. Tu misión:

  1. Ordena las frutas y elimina duplicados con sort frutas.txt | uniq
  2. Verifica que el resultado muestra cada fruta una sola vez, en orden alfabético

La salida debe mostrar las frutas únicas ordenadas.