Linux通過命令僅獲取IP地址的方法
一同事的朋友正在參加筆試,遇到這么一個問題讓他幫忙解決,結(jié)果同事又找到我?guī)退愣āU媸歉锌和ㄓ嵃l(fā)達(dá)在某些方面來說,真不知是不是好事??!題目大致如下所示,一般我們使用ifconfig查看網(wǎng)卡信息,請問你可以通過什么命令,讓其只輸出IP地址192.168.42.128
看似簡單的問題,實(shí)現(xiàn)起來也不是太簡單??纯聪旅娴乃悸钒?/p>
[root@DB-Server ~]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0C:29:9E:70:0E
inet addr:192.168.42.128 Bcast:192.168.42.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe9e:700e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:135 errors:0 dropped:0 overruns:0 frame:0
TX packets:216 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:14062 (13.7 KiB) TX bytes:26007 (25.3 KiB)
[root@DB-Server ~]# ifconfig eth0 | grep "inet addr"
inet addr:192.168.42.128 Bcast:192.168.42.255 Mask:255.255.255.0
到這一步非常簡單,接下來就需要借助awk來實(shí)現(xiàn)了,如下所示,到此問題解決。
[root@DB-Server ~]# ifconfig eth0 | grep "inet addr" | awk '{ print $2}'
addr:192.168.42.128
[root@DB-Server ~]# ifconfig eth0 | grep "inet addr" | awk '{ print $2}' | awk -F: '{print $2}'
192.168.42.128
PS: 獲取Linux下的IP地址
/**
* 獲取Linux下的IP地址
*
* @return IP地址
* @throws SocketException
*/
public static String getLinuxLocalIp() throws SocketException {
String ip = "";
try {
for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces();
en.hasMoreElements();) {
NetworkInterface intf = en.nextElement();
String name = intf.getName();
if (!name.contains("docker") && !name.contains("lo")) {
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses();
enumIpAddr.hasMoreElements();) {
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) {
String ipaddress = inetAddress.getHostAddress().toString();
if (!ipaddress.contains("::") && !ipaddress.contains("0:0:")
&& !ipaddress.contains("fe80")) {
ip = ipaddress;
}
}
}
}
}
} catch (SocketException ex) {
System.out.println("獲取ip地址異常");
ex.printStackTrace();
}
System.out.println("IP:" + ip);
return ip;
}
總結(jié)
以上所述是小編給大家介紹的Linux通過命令僅獲取IP地址的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- 詳解Linux防火墻iptables禁IP與解封IP常用命令
- linux下pip的安裝步驟及使用詳解
- VMware 克隆多臺Linux機(jī)器并配置IP的方法
- linux: centos設(shè)置ip以及連接外網(wǎng)的方法
- 利用iptables來配置linux禁止所有端口登陸和開放指定端口的方法
- windows及l(fā)inux環(huán)境下永久修改pip鏡像源的方法
- linux shell查看當(dāng)前外網(wǎng)IP
- linux命令行下使用curl命令查看自己機(jī)器的外網(wǎng)ip
- Linux ipcs命令與ipcrm命令的用法詳解
- linux中設(shè)置固定ip的方法(親測有效)
相關(guān)文章
詳解Linux實(shí)現(xiàn)U盤自動掛載(圖文教程)
這篇文章主要介紹了Linux實(shí)現(xiàn)U盤自動掛載功能,本文圖文并茂給大家介紹的非常詳細(xì),需要的朋友可以參考下2017-11-11
CentOS6.5 上部署 MySQL5.7.17 二進(jìn)制安裝以及多實(shí)例配置
這篇文章主要介紹了CentOS6.5 上部署 MySQL5.7.17 二進(jìn)制安裝以及多實(shí)例配置,需要的朋友可以參考下2017-01-01



