grep 两个特定字符之间的单词/数字

grep 两个特定字符之间的单词/数字

当你 ping 时,你将获得 () 之间的 ip,例如: (10.10.10.10) 并且在 ip 之后有 (数字),例如: (10.10.10.10) 56(84)

那么我如何才能获得 () 之间的 ip ? 并且没有第二个数字?

答案1

这将仅打印 IP 地址:

ping -c1 askubuntu.com | grep -Eo '([0-9]+\.){3}[0-9]+'

但是如果您想解析主机名,最好使用其他工具,例如hostdig nslookup类似工具:

dig +short askubuntu.com
# or
nslookup askubuntu.com | grep -Po "Address: \K.*"

查看更多解决方案这里

相关内容