q36988 发表于 2018-8-19 14:24:40

shell 截取IP地址

  昨天发简历到群里,让他们看下俺的简历,可行不,最后群里一个朋友说,出题考考俺 ,题目就是截获IP地址
  当时俺就傻眼了,不会呀,最后想到perl 写截取IP地址,如下是我的
  #!/usr/bin/perl
  use warning;
  $ip = system `ifconfig`;
  if ($ip =~/inet addr:\b\d+\.\d+\.\d+\.\d+/ ) {
  print;
  }
  想用捕获呢,结果长时间不写,都忘记了,又群里人催了,俺就把这个仍出去了,结果人家没让这么写,多复杂阿
  最后 又用shell 写 ifconfig|awk -F : '{print $2}' | awk '{print $1}'
  想不出来了,最后群里一个兄弟 让加上grep "\."   结果正出来了,也正够变态的
  完整的句子是ifconfig| awk -F : '{print $2}' | awk '{print $1}' | grep "\."
  把我写的perl 发perl群里,朋友给改了,说我写的那个不对
  正确是 ifconfig|perl -lne 'print $1 if /inet addr:((\d+\.){1,3}\d+)/'
  哈哈 还有好多方法呢,大家讨论的,都把自己写的 往群里仍,俺没记住他们的,这里也就没写,写这篇文章是,今天浏览linux 安全论坛 无意又看到IP地址截获 ,写的不错,就抄下来了如下;
  ifconfig eth0 |grep “inet addr:” |awk ‘{print $2}’|cut -c 6- 或者
  ifconfig | grep ‘inet addr:’| grep -v ’127.0.0.1′ | cut -d: -f2 | awk ‘{ print $1}’
  有点佩服作者了,定位那么好,几下就匹配到IP了

页: [1]
查看完整版本: shell 截取IP地址