Obter histórico dos 10 principais comandos usados [duplicados]

3

Existe alguma maneira de descobrir os 10 comandos mais usados da história? Aqui, o top 10 significa comandos que eu usei na maior parte do tempo, ou seja, os comandos cuja contagem usada é mais do que outros.

    
por snoop 15.10.2015 / 12:55

2 respostas

3

Eu mesmo tenho um pequeno script para verificar quais são os principais N comandos que tenho usado ultimamente:

mylast () {
        re='^[0-9]+$'
        if ! [[  =~ $re ]] ; then
           echo "error:  not a number" >&2
        else
           history | awk '{a[]++} END {for (i in a) print a[i], i}' | sort -rn | head -n 
        fi
}

Então, dizendo mylast 10 , ele mostra o top 10.

Isso é feito percorrendo o histórico e armazenando o segundo campo em awk , para que a contagem possa ser rastreada por meio de um array.

Exemplo de saída:

$ mylast 5
248 git
107 python
93 grep
71 awk
52 less
    
por fedorqui 15.10.2015 / 13:01
3

Uma linha:

history | awk '{CMD[]++;count++;}END { for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}' | grep -v "./" | column -c3 -s " " -t | sort -nr | nl |  head -n10

Exemplo de saída:

1  211  21.1%  ls
2  189  18.9%  sudo
3  58   5.8%   man
4  52   5.2%   cd
5  43   4.3%   ping
6  40   4%     apropos
7  34   3.4%   less
8  22   2.2%   cat
9  18   1.8%   which
10  18   1.8%   aspell

Este site fornece um pouco mais de informação.

    
por DevRobot 15.10.2015 / 12:59

Tags