GNU/Linux >> Tutoriales Linux >  >> Linux

Obtener el recuento de ocurrencias de palabras del archivo de texto de todas las palabras y la salida de impresión ordenada?

Tenía un comando que funcionaría a través de un archivo de texto, contaría todas las apariciones de las palabras e imprimiría así:

[email protected] $˜ magic-command-i-forgot | with grep | and awk | sort ./textfile.txt
66: the
54: and
32: I
16: unix
12: bash
5:  internet
3:  sh
1: GNU/Linux

Por lo tanto, no busca línea por línea, sino palabra por palabra, y lo hace para todas las palabras, no solo para 1 palabra. Lo encontré en algún lugar de Internet hace mucho tiempo, pero no puedo encontrarlo ni recordarlo.

Respuesta aceptada:

Yo usaría tr en lugar de awk :

echo "Lorem ipsum dolor sit sit amet et cetera." | tr '[:space:]' '[\n*]' | grep -v "^\s*$" | sort | uniq -c | sort -bnr
  • tr simplemente reemplaza los espacios con líneas nuevas
  • grep -v "^\s*$" recorta las líneas vacías
  • sort para preparar como entrada para uniq
  • uniq -c para contar ocurrencias
  • sort -bnr ordena en orden numérico inverso ignorando los espacios en blanco

guau. resultó ser un gran comando para contar palabrotas

encontrar . -nombre “*.py” -exec gato {} \; | tr ‘[:espacio:]’ ‘[\n*]’ | grep -v “^\s*$” | ordenar | uniq-c | ordenar -bnr | joder grep


Linux
  1. Cómo usar el comando WC para imprimir caracteres, bytes, saltos de línea y recuento de palabras en Linux

  2. ¿Imprimir todos los archivos en una carpeta?

  3. Obtener todas las combinaciones posibles de una palabra en minúsculas/mayúsculas?

  4. ¿Ordenar salida por columna?

  5. ¿Cómo obtener ps para imprimir grupo?

Obtenga la primera línea de la salida de un comando de shell

¿Cómo hacer que sha1sum genere binario?

tcpdump:¿cómo obtener una salida grepable?

¿Cómo obtener solo todos los ID de proceso en ejecución?

¿Cómo puedo ordenar la salida du -h por tamaño?

Obtenga todas las extensiones y su respectivo recuento de archivos en un directorio