Tôi có một lệnh một dòng liệt kê 10 địa chỉ IP hoạt động mạnh nhất từ nhật ký truy cập máy chủ web:
cat access.log | awk '{print $1}' | sort | uniq -c | sort -n | tail -n10
Một tập kết quả mẫu (chỉ có 3 mục để đơn giản) sẽ là:
20 12.34.56.7
22 3.67.89.201
29 9.0.203.255
Như bạn có thể thấy, số đếm đi trước địa chỉ IP, với hai khoảng cách được phân tách bằng một khoảng trắng. Thực tế cũng có những khoảng trống trước số đếm nhưng tôi không thể để chúng hiển thị ở đây.
Tôi muốn thực hiện tra cứu DNS ngược các địa chỉ IP để nó trông như thế này:
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)
Làm thế nào tôi có thể làm điều này mà không cần dùng đến một kịch bản (nghĩa là bám vào lệnh một dòng)? Bất cứ lời khuyên được nhiều đánh giá cao.