Bagaimana saya bisa membuat daftar dengan perintah yang paling banyak digunakan di terminal?
Saya tahu bahwa pertanyaan ini mungkin tidak berguna untuk proposal di masa depan bagi sebagian dari kita, tetapi bahkan seperti ini, daftar ini dapat berguna ketika kita tidak ingat perintah yang digunakan sekali atau beberapa kali di masa lalu, ketika kita dapat mencari di akhir daftar ini.
command-line
bash
history
Radu Rădeanu
sumber
sumber
Jawaban:
Kami akan menggunakan catatan dari
.bash_history
file untuk melakukan ini. Perintah selanjutnya akan memberi Anda daftar semua perintah agar Anda paling sering menggunakannya:Jika Anda hanya menginginkan 10 besar, Anda harus menambahkan
head
pada perintah di atas:Untuk mendapatkan top tertentu, misalnya top 5, gunakan
head
dengan-n 5
opsi:Jika Anda ingin daftar dalam urutan terbalik (atas dengan perintah yang jarang digunakan), jangan gunakan
r
oprion untuk yang keduasort
:Dan akhirnya untuk mendapatkan daftar dengan perintah yang digunakan satu kali misalnya, gunakan
grep ' 1 '
(ubah1
dengan nomor yang diinginkan):Untuk menangani
sudo
perintah (sepertisudo vim foo
), alih-alih hanya{print $3}
pada perintah awk, gunakan:Jadi seluruh perintah akan terlihat seperti:
Sebagai contoh:
Anda dapat melihat lompatan dalam jumlah untuk
vim
,rm
, dllsumber
sudo -i
karena itu memberi saya-i
sebagai perintahsudo -i
memulai sebuah shell baru. Sejarah itu tidak lagi dalam sejarah shell Anda, tetapi diroot
. Jelas perintah ini tidak berfungsi untuk banyak kasus tepi; tidak ada cara untuk menangani semua perintah yang mungkin tanpa menulis parser Anda sendiri untuk bahasa shell.if ($3 ~ /sudo/ && $4 !~ /^-/)
Perintah di bawah ini juga akan mencantumkan
top 10
perintah terminal yang paling sering digunakan,Perintah untuk mendaftar semua perintah yang paling sering digunakan di terminal,
sumber
Fish & Bash - Pertanyaannya tidak menentukan shell tertentu, hanya 'terminal'. Ubah kepala ke nomor apa pun yang Anda inginkan.
Ikan
history | awk '{print $1}' | sort | uniq --count | sort --numeric-sort --reverse | head -10
Bash yang satu ini tampaknya bekerja dan sedikit lebih pendek dan lebih mudah dipahami daripada jawaban yang lain. Saya suka opsi panjang untuk membantu keterbacaan dalam jenis contoh ini.
Pesta
history | awk '{print $2}' | sort | uniq --count | sort --numeric-sort --reverse | head -10
sumber