Linux – How to see what the most used linux command are

command linehistorylinux

I would like to know which command I use the most on the command line. I would like to know so I can improve my use of the command line. If I know which command I use the most, I can then read more about them try and figure out better ways to use them.

I know history keeps a list of all the previous commands I typed. How would I process it to see a list of the top 10 or 20 most used commands.

Best Answer

I just saw this post on http://linux.byexamples.com/

Basically you use a simple one line awk script

history | awk '{CMD[$2]++;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

A full explanation can be found at the link above.

Example of out put on my machine is:

 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