2017-06-02 107 views
-3

有很好的線條來顯示most used commands in bash historythis。現在我優化了別名,這隻顯示我的快捷鍵。bash歷史中最常用的命令組合?

作爲下一步,我想優化組合。例如,我相信我經常做一個git-log,git-show,git-push的組合。不過,我想要一些硬數據來支持這一點。也可能有組合發現我不會考慮。

所以,輸入是命令的歷史。輸出應該是這樣的:

123 git log 
    git show 
    git push 
456 git show 
    git log 
    git push 

語法無論。這可能也成爲這一點,如果簡單:

123 git log; git show; git push 
456 git show; git log; git push 

這也許應該對參數命令的考慮,雖然2和3,現在對我來說重要的唯一的編號。

問題:有沒有一個不錯的線索來計算?

+1

有這裏有個問題,你卡在哪個特定的部分? – 123

+0

我在這裏沒有看到問題。 – SaintHax

+0

好的,添加了實際的問題。 :) – qznc

回答

2

有與歷史文件格式問題(這個名字,我相信默認爲.bash_history但我用.bash-history),但第一遍可能是簡單的東西如:

sed /^#/d ~/.bash-history | 
    awk '{a2=a1; a1=$0;} NR>2{a[$0 ";" a1";" a2]++} 
     END {for (c in a) print a[c], c}' 
+0

'HISTFILE'環境變量將指向歷史文件 – Sundeep

+0

我不確定awk,但三元組的第一個條目總是相同的。我得到的結果像「cd; cd; ls」。 – qznc

+0

毫不奇怪,因爲你使用'cd'和'ls'很多。你可以過濾掉sed中的常用命令(我用它來過濾掉以註釋開頭的時間戳行),但是你可以使用'sed -e'/#/ d'-e'/^cd $/d '-e'/^ls $/d'' –