小编Goo*_*Doo的帖子

Bash:活动 IP 地址的反向 DNS 查找

我有一个单行命令,可以从 Web 服务器访问日志中列出前 10 个最活跃的 IP 地址:

cat access.log | awk '{print $1}' | sort | uniq -c | sort -n | tail -n10
Run Code Online (Sandbox Code Playgroud)

示例结果集(为简单起见只有 3 个条目)将是:

20 12.34.56.7
22 3.67.89.201
29 9.0.203.255
Run Code Online (Sandbox Code Playgroud)

如您所见,计数在 IP 地址之前,两者由空格分隔。计数前实际上也有空格,但我无法在此处显示它们。

我喜欢对 IP 地址进行反向 DNS 查找,使其看起来像这样:

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)
Run Code Online (Sandbox Code Playgroud)

如何在不求助于脚本的情况下执行此操作(即坚持使用单行命令)?非常感谢任何建议。

networking linux dns bash

11
推荐指数
1
解决办法
2万
查看次数

将换行符附加到命令输出

我有一个单行命令,它执行 curl 请求以检查服务器状态,然后将结果输出到日志文件。但问题是返回的结果没有换行符,因此当命令下次写入日志文件时,日志文件会混乱。

curl -s "http://myserver.com/api?param=1&param=2" | sudo tee -a /var/log/myserver.log
Run Code Online (Sandbox Code Playgroud)

我喜欢将其保留为单行命令。欢迎任何建议。感谢您的时间。

linux bash command-line

8
推荐指数
4
解决办法
4万
查看次数

标签 统计

bash ×2

linux ×2

command-line ×1

dns ×1

networking ×1