zhutao-niuniu2014

取IP地址的几种方法

1、用sed命令获取地址192.168.52.20

ifconfig ens33|sed -n \'2p\'|sed \'s#^.*inet ##g\'|sed \'s#  netmask.*$##g\'

思路为:先取第二行,然后去掉要取的关键字前面的字符,然后去掉后面的字符,(替换为空)就可得出

注意:sed命令中只有第一个和第二个#之间可以用正则表达式

2、sed命令第二种方法

 ifconfig ens33|sed -n \'2s#^.*net ##gp\'|sed \'s#  netmask.*$##g\'

s前面的2表示第二行,省去了一个管道符,并且最后一个sed可以不用-n参数,因为前面sed过滤之后只剩下一行了,同时取消后面的参数p,如果只取消-n不取消p,会多打印一行。

3、sed命令第三种方法

sed后向引用

sed -n \'s#()()#\1\2#gp\' file   当sed命令前面匹配部分用小括号的时候,第一个小括号内容可以用后面的\1输出,第二个小括号内容可以用后面的\2输出

ifconfig ens33|sed -nr \'2s#^.*inet (.*) netmask.*$#\1#gp\'

#中间的小括号需要转义,所以用sed -nr 或者不用r,里面用\转义

 4、直接从网卡文件获取

grep IPADDR /etc/sysconfig/network-scripts/ifcfg-ens33

grep IPADDR /etc/sysconfig/network-scripts/ifcfg-ens33|cut -d= -f2              其中-d=为指定分隔符为=,-f2为提取第二个字段

 

发表于 2019-07-30 08:44  小牛19851005  阅读(791)  评论(0编辑  收藏  举报
 

分类:

技术点:

相关文章:

  • 2021-09-17
  • 2021-05-23
  • 2021-12-14
  • 2022-01-01
  • 2022-01-08
  • 2021-10-05
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-20
  • 2021-12-05
  • 2021-12-15
  • 2021-08-13
  • 2022-12-23
  • 2022-01-08
  • 2022-12-23
相关资源
相似解决方案