利用Shell命令获取IP地址
一 :获取单个网卡的IPv4地址,方法如下:
方法一:
$/sbin/ifconfig ethX | awk '/inet addr/ {print $2}' | cut -f2 -d ":"
方法二:
$/sbin/ifconfig ethX | awk '/inet addr/ {print $2}' | awk -F: '{print $2}'
方法三:
$/sbin/ifconfig ethX | sed -ne 's/\(.*\)addr:\([[:digit:].]*\)\(.*\)/\2/p'
把ethX中的X替换为需要查看网卡的序号,如eth0,eth1...
获得本机所有网卡的IPv4地址,方法如下:
$/sbin/ifconfig | awk '{if ( $1 == "inet" && $3 ~ /^Bcast/) print $2}' | cut -f2 -d ":"
如果是IPv6网络,把上面的命令做简单修改即可,如:
$/sbin/ifconfig | awk '/inet6/ {print $3}' ----全部
$/sbin/ifconfig ethX | awk '/inet6/ {print $3}' ----单个
二、AIX操作系统中的读取方法:
#ifconfig en2 | sed -n "2,2p" | awk '{print $2}'
二、Linux操作系统中的读取方法
#ifconfig eth0 |grep "inet addr"| cut -f 2 -d ":"|cut -f 1 -d " "
cut参数简介
-d用来定义分隔符,默认为tab键,
-f表示需要取得哪个字段,2表示取得以-d指定的分隔符分割的第二个字段
当然也可以通过cut取得文件中每行中特定的几个字符,例如:
cut -c3-5 /etc/passwd
就是输出/etc/passwd文件中每行的第三到第五个字符。
-c 和 -f 参数可以跟以下子参数:
N 第N个字符或字段
N- 从第一个字符或字段到文件结束
N-M 从第N个到第M个字符或字段
-M 从第一个到第M个字符或字段