取ip地址,最简单粗暴的2种方法

命令:awk -F"[ :]+" ‘NR==2 {print$4}‘

[[email protected] tmp]# ifconfig eth0
eth0     Link encap:Ethernet  HWaddr00:0C:29:8B:B4:9A 
         inet addr:192.168.56.128 Bcast:192.168.56.255 Mask:255.255.255.0
         inet6 addr: fe80::20c:29ff:fe8b:b49a/64 Scope:Link
 [[email protected]]# ifconfig eth0 |awk -F"[ :]+" ‘NR==2 {print $4}‘
192.168.56.128

[ :]为空格和冒号为分隔符,+为匹配之前项的1次或者多次。因为空格在ip地址所在行最前面有10个,所以匹配多个空格。"[  :]+"的整体意思就是匹配多个空格和冒号为分隔符。

命令:sed -n‘2s#^.*r:\(.*\) B.*$#\1#p‘

[[email protected] tmp]# ifconfig eth0
eth0     Link encap:Ethernet  HWaddr00:0C:29:8B:B4:9A 
         inet addr:192.168.56.128 Bcast:192.168.56.255 Mask:255.255.255.0
         inet6 addr: fe80::20c:29ff:fe8b:b49a/64 Scope:Link
 [[email protected] tmp]# ifconfig eth0 |sed -n‘2s#^.*r:\(.*\) B.*$#\1#p‘
192.168.56.128

^>*r:为以r:为结尾,以任意字符为开头。\(.*\)为取以任意字符,并保存匹配字符。空格B.*$以空格和大B为开头,以任意字符为结尾。\1为取出\(.*\)的匹配字符。

时间: 2024-12-13 16:15:45

取ip地址,最简单粗暴的2种方法的相关文章

linux下命令取IP地址的多种方法

经常会遇到在命令行取ip地址,或写脚本引用ip地址,需要使用命令取出来:下面的方法根据实际情况调整 下面的命令环境为centos6.6系统: [[email protected] ~]# ifconfig eth0 eth0      Link encap:Ethernet  HWaddr 00:0C:29:2A:03:61             inet addr:192.168.20.50  Bcast:192.168.20.255  Mask:255.255.255.0         

Linux系统下取IP地址的几种方法

Linux系统下取IP地址所在行的方法:(1).ifconfig eth0 | grep "inet addr"          inet addr:10.57.36.112  Bcast:10.57.36.255  Mask:255.255.255.0注释:grep过滤包含"inet addr"字符串的内容(2).ifconfig eth0 | sed -n '2p'          inet addr:10.57.36.112  Bcast:10.57.36

获取网页URL地址及参数等的两种方法(js和C#)

转:获取网页URL地址及参数等的两种方法(js和C#) 一 js 先看一个示例 用javascript获取url网址信息 <script type="text/javascript"> document.write("location.host="+location.host+"<br>"); document.write("location.hostname="+location.hostname+&

linux取IP地址的多种方法

对于很多linux初学者,还有很多基础面试时,都会可能遇到需要提取IP地址的问题,下面我总结了多种取IP址的方法,希望大家能学到知识 如下图,我需要提取出eth0的IP地址 方法一:使用awk实现 ifconfig eth0 |grep "inet addr" |awk '{print $2}' | awk -F : '{print $2}' 参数说明: awk 默认以空格为分隔符 -F 指定分隔符 '{print $2}' 输出第二个参数 方法二:使用sed实现 [[email pr

十进制转IP地址的简单处理方案

题目:十进制转IP地址.例如输入:3689901706,输出:219.239.110.138 代码报错,输出-118.-145.-16.-36. #include<stdio.h> int main() { long int num,a[4]; num = 3689901706; int i,j; for(i=0;i<4;i++) { printf("%d",num); a[i]=num%256; printf("%d",a[i]); num=nu

linux中如何取ip地址

使用命令:awk .sed注意:要注意!正则有使用规则的!先看ip地址,使用命令:ifconfig eth0 |awk 'NR==2' / ifonfig eth0 |sed -n '2p'输出结果:省略一下,可以自己去试一下. ifconfig eth0 |awk 'NR==2' -F "[: ]+" '{print$4}' ifconfig eth0 |sed -nr '2s#^.(.) Bc.$#\1#gp' 难点在于要理解正则和三剑客配合使用的原因.需要多多在xshell上练习

Linux系统下修改IP地址、网关、DNS的基本方法

临时修改IP地址.网关.主机名.DNS,马上生效,无需重启(重启后失效) 1.修改主机名 #hostname Slyar 2.修改IP地址(eth0为网卡名称) #ifconfig eth0 192.168.1.5 netmask 255.255.255.0 3.修改默认网关(eth0为网卡名称) #route add default gw 192.168.1.1 dev eth0 4.修改DNS #vim /etc/resolv.conf CentOS(RedHat)命令行永久修改IP地址.网

判断IP地址是否在指定范围内的方法

比如给定一个ip段:127.0.0.1 ~ 127.0.0.255,我们想判断一个给定的ip地址是否在此段内,可以先将ip地址转换成整数,然后整数比较大小就很容易了. 例如: 127.0.0.1 = 2130706433 127.0.0.255 = 2130706687 判断: 127.0.1.253 = 2130706941 是否在此范围内,直接比较整数大小即可 将ip地址转换成整数: public static long IP2Long(string ip) { string[] ipByt

取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}'