今天在群里有个人提了一个需求,他需要截取本地ip地址的字段,另外不满3位数的要求前面补0
即可: 192.168.99.12----------------》 192 168 099 012
使用AWK 实现如下:ifconfig eth0|grep 'inet addr'|awk -F '[ :]' '{print $13}'|awk -F. '{for(i=1;i<=NF;i++)if($i<100) $i=("0"$i);print $0}'
IP地址也可以使用sed截取如下(个人感觉awk更加精简):/sbin/ifconfig eth0 | grep 'inet addr' | sed 's/^.*addr://g' | sed 's/Bcast.*$//g' |awk -F. '{for(i=1;i<=NF;i++)if($i<100) $i=("0"$i);print $0}'
另外想了一下也可以在awk中这样实现 len($i)<3, 使用len()这个函数实现。
阅读(1436) | 评论(0) | 转发(0) |