cat ~/.bash_history | awk '{ print $1 }' | sort | uniq -c | awk '$1>1 {print $0}' | sort -r
これで自分がシェル上でよく使うコマンドのランキングを見られる。
# History HISTSIZE=99999 HISTFILESIZE=99999999 export HISTCONTROL=ignoreboth export HISTIGNORE=?:??:???:exit
なお、 .bash_history に入ってくれる履歴にはデフォルトで上限があるので HISTSIZE や HISTFILESIZE を .bashrc あたりで変更しておくといいだろう。
ついでに HISTCONTROL (例では連続して入力されたコマンドと空白から始まるコマンドを記録しないという設定をしている) や HISTIGNORE (例では 1〜3文字だけで入力されたコマンドと exit コマンドを記録しないという設定をしている) といった設定もしておくといいかもしれない。
ちなみに僕の結果はローカル環境でもリモート環境でも git > vim > cd だった。 git はそれ単体で集計し直してもおもしろいだろうし、 vim はまあそうだろうという感じだが、 cd は僕は autojump を使っているのだがそれでもなお多いことに驚いた。