编写一个在linux环境下获取指定网卡的IP与网关IP的shell脚本
时间: 2023-02-01 08:59:35 浏览: 135
为了获取指定网卡的 IP 地址和网关 IP 地址,你可以使用以下命令:
```
# 获取指定网卡的 IP 地址
ipaddr=$(ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')
# 获取指定网卡的网关 IP 地址
gateway=$(ip route | grep default | grep -oP '(?<=via\s)\d+(\.\d+){3}')
echo "IP address: $ipaddr"
echo "Gateway IP: $gateway"
```
其中,eth0 是指定的网卡名称,你可以替换成你想要获取信息的网卡名称。
要将这些命令保存为 shell 脚本,可以在首行添加 `#!/bin/bash`,然后保存为 .sh 文件即可。
例如:
```
#!/bin/bash
# 获取指定网卡的 IP 地址
ipaddr=$(ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')
# 获取指定网卡的网关 IP 地址
gateway=$(ip route | grep default | grep -oP '(?<=via\s)\d+(\.\d+){3}')
echo "IP address: $ipaddr"
echo "Gateway IP: $gateway"
```
保存后,可以使用 `chmod +x script.sh` 命令为脚本赋予执行权限,然后使用 `./script.sh` 运行脚本。
阅读全文