写一个shell获取本机ip地址、网关地址以及信息。

shell练习之获取本机ip地址、网关、dns信息

经常会遇到取本机ip、网关、dns地址,一个命令ipconfig /all全部获取到,但系统却并非如此。

linux系统都自带ifconfig命令可以查看ip相关信息,不同的版本获取的信息可能会稍有差异,不过思路都一样,ifconfig eth0的输出信息中筛选出需要的ip信息:

 

网关地址可以通过route命令查看(netstat -r也可以输出同样的结果):

 

dns信息需要查看/etc/resolv.conf文件:

 

完整实现脚本如下:

#!/bin/bash
ip=`ifconfig eth0 | grep inet | awk 'NR==1{print $2}'`
dg=`route | awk 'NR==3{print $2}'`
dns=`cat /etc/resolv.conf | grep nameserver | awk 'NR==1{print $2}'`
echo "ip=$ip"
echo "dg=$dg"
echo "dns=$dns"

以上,欢迎大家讨论学习。

胜象大百科