执行命令取出linux中eth0的IP地址

方法一:cut命令

#ifconfig eth0|grep ‘inet addr‘|cut -d ":" -f2|cut -d " " -f1
192.168.1.11

方法二:awk命令

1.使用两遍awk命令

#ifconfig eth0 |grep ‘inet addr‘|awk -F ":" ‘{print $2}‘ |awk ‘{print $1}‘
192.168.1.11

2.使用一遍awk命令

错误写法:

# ifconfig eth0|grep ‘inet addr‘|awk -F [ :] ‘{print $13}‘
awk: :]
awk: ^ syntax error

正确写法:

#ifconfig eth0|grep ‘inet addr‘|awk -F ‘[ :]‘ ‘{print $13}‘
192.168.1.11

也可以是:

#ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-6)}‘

NF在awk中表示最后一行,如果看不懂NF后面减6,可以分开查看

[[email protected] lele]# ifconfig eth0|sed -n ‘2p‘
          inet addr:192.168.1.11  Bcast:192.168.1.255  Mask:255.255.255.0
[[email protected] lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF)}‘
255.255.255.0
[[email protected] lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-1)}‘
Mask
[[email protected] lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-2)}‘

[[email protected] lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-3)}‘
192.168.1.255
[[email protected] lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-4)}‘
Bcast
[[email protected] lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-5)}‘

[[email protected] lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-6)}‘
192.168.1.11

3.awk多分隔符

#ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]+‘ ‘{print $4}‘
192.168.1.11
#ifconfig eth0|awk -F ‘[ :]+‘ ‘NR==2 {print $4}‘
192.168.1.11

‘+‘表示重复前面多个字符,将多个空格或者冒号合并为一个字符。

时间: 2024-10-23 03:09:01

执行命令取出linux中eth0的IP地址的相关文章

awk -F选项同时指定多个符号做为分割符时遇到空格坑,题目:请执行命令取出 linux 中 eth0 的 IP 地址

第三关课前考试题:3.请执行命令取出 linux 中 eth0 的 IP 地址(请用 cut,有能力者也可分别用 awk,sed 命令答) 因为以前有个题讲过awk -F选项可以指定输入分割符,也可以同时使用多个符号作为分割符对文件进行切割,所以我决定先使用awk -F 以前awk -F同时指定多个分割符的例子: [[email protected] ~]# cat oldboy.txt I am oldboy,myqq is 31333741 [[email protected] ~]# aw

提取linux中eth0的IP地址

法1:cut [[email protected] oldboy]# ifconfig eth0|grep 'inet addr'|cut -d ":" -f2|cut -d " " -f1 10.0.0.162 法2:awk [[email protected] oldboy]# ifconfig eth0|grep 'inet addr'|awk -F ":" '{print $2}'|awk '{print $1}' 10.0.0.162

在linux中设置静态ip地址

在linux中设置静态ip地址1.在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-eth0 2.开始编辑,填写ip地址.子网掩码.网关.DNS等[[email protected] 桌面]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0  #设备名称TYPE=Ethernet #网络类型UUID=bfafdad5-e1c9-4adf-864b-c772e4965ab7ONBOOT=

在虚拟机上ifconfig结果中eth0没有IP地址(inet4)而是显示的是inet6

问题描述:在虚拟机上执行ifconfig,结果中eth0没有显示IP地址inet4,而是显示inet6: 出现原因:虚拟机上没有连接网络: 解决方法:启动网卡,执行命令: ifup eth0 衍生问题:当执行上述命令时,却报如下错误: some other host already uses the address. 说明虚拟机指定的IP地址已经被占用了. 问题产生的原因是,我在配置静态IP地址的时候,将本地VMnet8的IP地址配置成和虚拟机的IP地址一样的了.刚刚配置完成时使用上是没有问题,

ubuntu 16.4 中eth0添加ip地址,且可以上网

1.sudo vim /etc/network/interfaces  中添加 auto eth0 iface eth0 inet static address 192.168.1.30 (地址自己定义) 即可 2.在控制器中输入ifconfig,查看eth0中是否存在192.168.1.30(即自己定义的ip地址),如果存在且查看是否可以上网 ping baidu.com即可,如果ping成功且可以上网,失败则eth0配置失败 3.sudo vim /etc/init.d/networking

Linux中配置静态IP地址

刚安装的CentOS,默认配置的是动态IP,如果重启了虚拟机(虽然不经常),IP地址就切换了,再使用远程工具连接要重新改地址,费劲. 今天设置了静态地址,记录一下. 环境:VMware 10.0.0 + CentOS 6 首先,设置好VMware的网络设置 编辑 > 虚拟网络编辑器 VMnet8 > 选“NAT模式(与虚拟机共享主机的IP地址)” 选“NAT设置”,记住“网关IP”(待会设置使用) 取消“使用本地DHCP服务将IP地址分配给虚拟机”的勾选 右键所安装的系统 > 设置 &g

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上练习

VMware 虚拟机 Ubuntu 系统执行 ifconfig 命令 eth0没有IP地址(intet addr、Bcast、Mask) 解决:UP BROADCAST MULTICAST 问题

VMware 虚拟机 ifconfig没有net_addr地址.Bcast.Mask的解决方法 使用时间长的虚拟机,会莫名其妙的连接不上网 在终端中,使用ifconfig命令查看Ubuntu系统的IP地址,发现没有分配IP地址. eth0:网络接口 link encap : 网络类型 HWaddr : 网卡物理地址 Inet addr :(internet address) IP地址 Bcast:广播地址 Mask:子网掩码 UP:正在使用的网络接口 RX packets,TX packets 

Android adb命令,linux中各种命令

常用的ADB命令 1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器): android create avd --name 名称 --target 平台编号 4. 启动模拟器: emulator -avd 名称 -sdcard ~/名称.img (-skin 1280x800) 5. 删除AVD(模拟器): android delete avd --name 名称