/sbin/ifconfig | grep -A1 '^eth1' | grep 'inet addr:' | awk -F: '{ print $2 }' | awk '{ print $1 }' | grep -E '^10\.|^172\.|^192\.' | head -n1
对每个参数进行分析
/sbin/ifconfig 显示所有ip地址的信息
grep -A1 '^eth1' 筛选出以eht1开头的两行
grep 'inet addr:' 在上一步的赛选出的信息中进一步赛选到 inet addr:
awk -F: '{ print $2 }' 以:为分割符号打印第二个字段, inet addr:10.12.193.226 Bcast:10.12.193.255 Mask:255.255.255.0,在这里第一个字段是inet addr: 第二个是
10.12.193.226 Bcast
awk '{ print $1 }' 在上一步得出的信息中继续进一步的筛选,这里默认是以空格为分隔符号,输出第一个字段10.12.193.226
grep -E '^10\.|^172\.|^192\.' 这句话是筛选以10、172,、192为开头的IP地址 | 这个是或者的意思,-E这个参数表示后面的是正则表达式
head -n1 输出第一行