Saya memiliki perintah satu baris yang mencantumkan 10 alamat IP paling aktif teratas dari log akses server web:
cat access.log | awk '{print $1}' | sort | uniq -c | sort -n | tail -n10
Kumpulan hasil sampel (dengan hanya 3 entri untuk kesederhanaan) adalah:
20 12.34.56.7
22 3.67.89.201
29 9.0.203.255
Seperti yang Anda lihat, hitungan mendahului alamat IP, dengan keduanya dipisahkan oleh ruang kosong. Sebenarnya ada ruang kosong sebelum penghitungan juga, tetapi saya tidak bisa membuatnya ditampilkan di sini.
Saya suka melakukan reverse DNS lookup dari alamat IP sehingga akan terlihat seperti ini:
20 12.34.56.7 (d12-34-56-7.abhsia.telus.net)
22 3.67.89.201 (customer.vpls.net)
29 9.0.203.255 (9-0-203-255.hlrn.qwest.net)
Bagaimana saya bisa melakukan ini tanpa menggunakan skrip (yaitu, berpegang pada perintah satu baris)? Setiap saran sangat dihargai.