lunes, 11 de mayo de 2009

Comandos más utilizados en Linux

Encontré este comando ingenioso que muestra los comandos más utilizados en la consola y el número de veces que los hemos ejecutado:

history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head -n 10

Aquí la explicación del script:

  • history - Obtiene la lista de comandos usados recientemente con el siguiente formato:
    100 cd project
    101 mvn clean install
    102 cd target
    103 cp project-1.0.jar /somewhere
    (no estoy seguro con que vigencia se 'guardan' los comandos; si lo encuentro actualizo).
  • awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' - Utiliza awk para incrementar los valores de un arreglo a, usando el comando introducido como llave (el segundo parámetro de la lista anterior).
    Después de haber recibido la lista, simplemente recorre el arreglo y lo imprime en pantalla.
  • sort -rn - Ordena la lista generada por el comando anterior de mayor a menor y usando la representación numérica de la cadena
  • head -n 10 - Muestra solo los primeros 10 elementos de la lista (si usamos solo head sin parametros muestra 10, agregué el -n 10 para hacerlo más claro).

Mi resultado fue:

vhuerta@vhuertat43:~$ history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head -n 10
111 svn
88 cd
83 ls
34 mvn
23 exit
19 man
16 ssh
15 cat
12 sudo
12 ps

Hmmm... Interesante

No hay comentarios.:

Publicar un comentario