【发布时间】:2013-04-12 21:46:00
【问题描述】:
我正在开发一个 bash 脚本,我正在尝试从打开的网络接口获取 IPv4 地址,在此操作中我使用 ip addr 和 sed,但出了点问题,因为我无法从 sed 获取 IP。
所以,脚本有时会这样:
ip addr show dev eth0 | grep "inet "
这应该返回:
inet 192.168.1.3/24 brd 192.168.1.255 scope global eth0
对于 sed,我想要这个:
192.168.1.3/24
我尝试了一些正则表达式,但它只给出错误或空行!我怎样才能做到这一点?
【问题讨论】:
-
| awk '{print $2}' -
我会将它传送到另一个
grep -o [0-9.]\+/[0-9]\+(抱歉,我会测试它,但我现在已启动到 Windows。) -
@Petesh 效果很好!但它不是 sed
-
@PauloOliveira 要求使用
sed在我看来有点奇怪……几乎就像是家庭作业 -
@Petesh 你是第一个回答的,但你没有回答而是发表评论,所以我不能“接受”你的建议:(