【发布时间】:2013-12-19 07:35:39
【问题描述】:
我尝试从 linux 机器上运行 whois 命令,我在终端和网络中得到了我想要的结果,但结果非常乏味且冗长。有什么方法可以过滤以下链接中的输出结果
在进行 whois 扫描时,我想删除显示创建和更新日期以及通知段落。我该如何执行这些活动。
【问题讨论】:
标签: linux web-services networking whois
我尝试从 linux 机器上运行 whois 命令,我在终端和网络中得到了我想要的结果,但结果非常乏味且冗长。有什么方法可以过滤以下链接中的输出结果
在进行 whois 扫描时,我想删除显示创建和更新日期以及通知段落。我该如何执行这些活动。
【问题讨论】:
标签: linux web-services networking whois
您可以使用grep 拉出特定行或排除特定行。例如:
# Show only lines containing "abc"
whois example.ex | grep -F abc
# Show only lines that don't contain "abc"
whois example.ex | grep -Fv abc
【讨论】:
可以使用grep 执行简单的字符串过滤和替换。
但是,grep 在去除多行字符串或可以去除的字符串具有不同的锚点时效果不佳。
例如,如果您不想显示免责声明,这是一项非常艰巨的任务。因为每个注册表都会在响应的不同部分以不同的格式打印出免责声明。
对于此类任务,您需要 - 将答案分解成碎片(解析)并去掉不需要的内容,然后输出字符串 - 为您要删除的每个部分维护一个标识符列表,并使用自定义脚本在它们出现时删除它们(这或多或少是 linux whois 客户端在您通过时用来删除免责声明的方法命令行中的相应选项)。
在这两种情况下,这都不是一件小事。
【讨论】: