Neulich diskutierten ein anderer Linux-Benutzer und ich über Linux-Befehle. Er fragte mich, welchen Linux-Befehl ich am häufigsten benutze. Ich sagte ihm, dass einer meiner am häufigsten verwendeten Befehle sudo
. Ich verwende es jeden Tag zum Installieren, Aktualisieren, Entfernen von Paketen und für andere Verwaltungsaufgaben auf meiner Linux-Box. Ich schätze "sudo"
ist der am häufigsten verwendete Befehl vieler Linux-Benutzer. Wenn Sie sich jemals gefragt haben, was Ihre am häufigsten verwendeten Befehle unter Linux sind, erfahren Sie hier, wie Sie sie finden.
Finden Sie die am häufigsten verwendeten Befehle unter Linux
Wie Sie wissen, enthält die Verlaufsdatei (~/.bash_history
) zeichnet alle Befehle auf, die Sie im Terminal ausführen. Sie können leicht herausfinden, welche Befehle Sie am häufigsten verwenden, indem Sie auf diese Datei verweisen.
Lassen Sie mich Ihnen die 5 am häufigsten verwendeten Befehle auf meiner Linux-Box zeigen:
$ history | awk '{print $2}' | sort | uniq -c | sort -nr | head -5
Beispielausgabe:
153 sudo 118 pngquant 33 cd 30 ssh 29 exit
Lassen Sie uns den obigen Befehl aufschlüsseln und sehen, was jede Option bewirkt.
- Der
"awk '{print $2}'"
Befehl gibt den ersten String aus der Verlaufsdatei aus, ohne Befehlsoptionen und -argumente anzuzeigen. - Der
"sort"
Befehl ordnet alle Zeilen alphabetisch an. - Der
"uniq -c"
Der Befehl entfernt die doppelten Zeilen (eingegebene Befehle) und zählt sie. - Und der letzte
"sort -nr"
command zeigt die Befehle in umgekehrter Reihenfolge nach der von"uniq"
zurückgegebenen Zählnummer an Befehl.
Vorsicht: Sie können ExplainShell verwenden um herauszufinden, was jeder Teil eines Befehls tut.
Wie Sie sehen, "sudo"
ist der am häufigsten verwendete Befehl und ich habe ihn 153 Mal verwendet. Und "exit
" ist der am wenigsten verwendete Befehl.
Ich habe das Ergebnis in absteigender Reihenfolge (umgekehrt) sortiert, dh vom größten zum kleinsten. Um den am häufigsten verwendeten Befehl in aufsteigender Reihenfolge (vom kleinsten zum größten) anzuzeigen, verwenden Sie stattdessen diesen Befehl:
$ history | awk {'print $2'} | sort | uniq -c | sort -n | tail -n5
Beispielausgabe:
29 exit 30 ssh 33 cd 118 pngquant 153 sudo

Hier ist die andere Version desselben Befehls, die ein paar zusätzliche Details zeigt:
$ 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 -n5 1 177 17.7177% pngquant 2 173 17.3173% vagrant 3 101 10.1101% cd 4 71 7.10711% sudo 5 47 4.7047% ffmpeg
Wenn Sie die Anzahl der Ergebnisse nicht einschränken möchten, entfernen Sie einfach die letzte (head
oder tail
) Teil der obigen Befehle:
$ history | awk '{print $2}' | sort | uniq -c | sort -nr
Die oben genannten Befehle sind Bash-spezifisch. Wenn Sie auf Fisch sind Shell, führe aus:
$ history | cut -d ' ' -f 1 | sort | uniq -c | sort -nr | head -5
Jetzt ist es Ihre Zeit. Finden Sie Ihre am häufigsten verwendeten Befehle auf Ihrer Linux-Box heraus.