请执行命令取出 linux 中 eth0 的 IP 地址(请用 cut,有能力者也可分别用 awk,sed 命令答)。

自己的方法:

[root@nginx_back ~]# ifconfig eth0

eth0      Link encap:Ethernet  HWaddr 00:0C:29:21:B6:B1

inet addr:192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fe21:b6b1/64 Scope:Link

UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

RX packets:83235 errors:0 dropped:0 overruns:0 frame:0

TX packets:142206 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:9020682 (8.6 MiB)  TX bytes:11377482 (10.8 MiB)

[root@nginx_back ~]#

[root@nginx_back ~]# man -cut

man:无效选项 -- u

Cannot open the message catalog "man" for locale "zh_CN.UTF-8"

(NLSPATH="/usr/share/locale/%l/LC_MESSAGES/%N")

man, version 1.6f

usage: man [-adfhktwW] [section] [-M path] [-P pager] [-S list]

[-m system] [-p string] name ...

a : find all matching entries

c : do not use cat file

d : print gobs of debugging information

D : as for -d, but also display the pages

f : same as whatis(1)

h : print this help message

k : same as apropos(1)

K : search for a string in all pages

t : use troff to format pages for printing

w : print location of man page(s) that would be displayed

(if no name given: print directories that would be searched)

W : as for -w, but display filenames only

C file   : use `file' as configuration file

M path   : set search path for manual pages to `path'

P pager  : use program `pager' to display pages

S list   : colon separated section list

m system : search for alternate system's man pages

p string : string tells which preprocessors to run

e - [n]eqn(1)   p - pic(1)    t - tbl(1)

g - grap(1)     r - refer(1)  v - vgrind(1)

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d : -f 2

192.168.0.131  Bcast

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d : -f 2-2

192.168.0.131  Bcast

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d : -f 2-4

192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d :   -f 2

192.168.0.131  Bcast

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d ': ' -f 2

cut: 分界符必须是单个字符

请尝试执行"cut --help"来获取更多信息。

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d '' -f 2   

          inet addr:192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut '' -f 2

cut: : 没有那个文件或目录

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d : -f 2   

192.168.0.131  Bcast

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d : -f 2|grep -v "Bcast"

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d : -f 2|grep -v " Bcast"

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d : -f 2

192.168.0.131  Bcast

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|cut -d : -f 2|cut -d ' ' -f 1

192.168.0.131

再试试用sed解出本题答案:

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|sed "s/inet addr:192.168.0.131/192.168.0.131/"

          192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

不行

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|sed "s/192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0/192.168.0.131/" 笨办法也没有达到想要的结果

          inet addr:192.168.0.131

[root@nginx_back ~]# ifconfig eth0|grep "inet addr"|sed "s/192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0/192.168.0.131/"|sed "s/inet addr:192.168.0.131/192.168.0.131/"

          192.168.0.131  重属笨办法

awk目前还没有学,所以还不会,以后会补充上

老男孩老师的方法:

[root@nginx_back ~]# ifconfig eth0|grep "inet addr:"

inet addr:192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

[root@nginx_back ~]# ifconfig eth0|grep "inet addr:"|cut -d":" -f 2

192.168.0.131  Bcast

[root@nginx_back ~]# ifconfig eth0|grep "inet addr:"|cut -d":" -f 2|cut -d" " -f1

192.168.0.131

方法一、[root@nginx_back ~]# ifconfig eth0|grep "inet addr:"|cut -c 21-33

192.168.0.131

方法二、[root@nginx_back ~]# ifconfig eth0|sed -n "2p"

inet addr:192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

[root@nginx_back ~]# ifconfig eth0|sed -n "2p"|cut -c 21-33

192.168.0.131

方法三、[root@nginx_back ~]# ifconfig eth0|awk 'NR==2'

inet addr:192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

[root@nginx_back ~]# ifconfig eth0|awk 'NR==2'|cut -c 21-33

192.168.0.131

方法四、[root@nginx_back ~]# ifconfig eth0|head -2|tail -1|awk -F "[ :]+" '{print $4}'

192.168.0.131

推荐方法五、[root@nginx_back ~]# ifconfig eth0|awk -F "[ :]+" 'NR==2 {print $4}'  “+“在这代表多个空格或多个冒号算一个分隔符           

192.168.0.131

解释方法五、

[root@nginx_back ~]# ifconfig eth0

eth0      Link encap:Ethernet  HWaddr 00:0C:29:21:B6:B1  

          inet addr:192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

          inet6 addr: fe80::20c:29ff:fe21:b6b1/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:87736 errors:0 dropped:0 overruns:0 frame:0

          TX packets:150293 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:9441211 (9.0 MiB)  TX bytes:11948352 (11.3 MiB)

[root@nginx_back ~]# ifconfig eth0|awk -F "[ :]+" 'NR==2 {print $4}'

192.168.0.131

“+“号在上面的方法五里面代表多个空格或多个冒号算一个分隔符,例如以下:

[root@nginx_back ~]# cat test.log(测试文件自己创建,内容如下)

-----------1@@@@@@@@@@2==========3

[root@nginx_back ~]# awk -F "[-@=]+" '{print $2,$3,$4}' test.log

1 2 3

方法六、[root@nginx_back ~]# ifconfig eth0|sed -n '2p'

          inet addr:192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

[root@nginx_back ~]# ifconfig eth0|sed -n '2p'|sed 's/^.*addr://g'|sed 's/B.*$//g'

192.168.0.131

方法七、[root@nginx_back ~]# grep IPADDR /etc/sysconfig/network-scripts/ifcfg-eth0

IPADDR=192.168.0.131

        [root@nginx_back ~]# grep IPADDR /etc/sysconfig/network-scripts/ifcfg-eth0|awk -F "=" '{print $2}' 

192.168.0.131

sed练习:

[root@nginx_back ~]# ifconfig eth0|sed -n '2p'

inet addr:192.168.0.131  Bcast:192.168.0.255  Mask:255.255.255.0

[root@nginx_back ~]# ifconfig eth0|sed -nr 's#^.*dr:(.*) Bcast:(.*) M.*$#\1\2#gp'

192.168.0.131 192.168.0.255

grep线上环境精典案例后续的更多相关文章

  1. 使用Fabric一键批量部署上线/线上环境监控

    本文讲述如何使用fabric进行批量部署上线的功能 这个功能对于小应用,可以避免开发部署上线的平台,或者使用linux expect开发不优雅的代码. 前提条件: 1.运行fabric脚本的机器和其他 ...

  2. CAS (15) — CAS 线上环境 Ehcache Replication 的非稳定重现错误 java.util.ConcurrentModificationException

    CAS (15) - CAS 线上环境 Ehcache Replication 的非稳定重现错误 摘要 线上环境在 EhCache Replication 过程中出现 java.util.Concur ...

  3. 【微信小程序】---线上环境搭建

    一.前言 通常我们在本地电脑上开发微信小程序,调用和访问小程序会有很多问题.特别是在配有自己后端的情况下,我们通过真机访问我们的小程序会出现不可访问的问题 二.线上环境搭建 在这里我们主要以腾讯云给大 ...

  4. robot framework 测试/预发/线上环境快捷切换

    通常情况下布署的三套环境:测试.预发及线上环境.调试或者辅助验证测试时,切环境改变量甚是麻烦.这些变量包括但不限于:一些url信息,数据库信息,预置用户信息等. 切换环境方法一:使用变量文件,通过判断 ...

  5. 线上环境HBASE-1.2.0出现oldWALs无法自动回收情况;

    正常情况下,hmaster会定期清理oldWALs文件夹,一般该文件大小也就几百兆,但是我们线上 环境出现了该文件没有自动回收情况,如图: 该目录占用hdfs空间多达7.6T,浪费空间: 后来经过多番 ...

  6. vue本地和线上环境(域名)配置

    vue本身为运行脚手架项目自家搭载了一个nodejs后台环境,本地可通过proxyTable来处理跨域问题,但是上线(或生产环境)之后改域名真是一件麻烦的事情,所以进行一些配置. config/ind ...

  7. wechat开发笔记之1.线上环境搭建与测试

    Wechat开发笔记 线上环境搭建: 申请一个wechat公众平台. 手机个人微信可以用webwechat来测试. Website:https://web.weixin.qq.com/ 手机客户端扫一 ...

  8. Vue 2.x 3.x 配置项目开发环境跟线上环境

    先找到package.json  (这是nuxt版的vue 可能会跟一般vue不一样  当然总体上差不多的) "scripts": { "dev": " ...

  9. Docker + node(koa) + nginx + mysql 线上环境部署

    在上一篇 Docker + node(koa) + nginx + mysql 开发环境搭建,我们进行了本地开发环境搭建 现在我们就来开始线上环境部署 如果本地环境搭建没有什么问题,那么线上部署的配置 ...

随机推荐

  1. EntityFramework小知识

    Entity Framework 应用程序有以下优点: 1 应用程序可以通过更加以应用程序为中心的概念性模型(包括具有继承性.复杂成员和关系的类型)来工作. 2 应用程序不再对特定的数据引擎或存储架构 ...

  2. linux定时执行文件

     #!/bin/bashcurl "http://172.16.201.24:8080/?app_act=timer/automic_integral" -b -q -o /dev ...

  3. What Influences Method Call Performance in Java?--reference

    reference from:https://www.voxxed.com/blog/2015/02/too-fast-too-megamorphic-what-influences-method-c ...

  4. Asp.Net 之 当前上下文中不存在名称" Server "

    在开发中经常用到应用程序的物理路径,在获取应用程序中文件的物理路径时最常用: string path = Server.MapPath("Document/example.doc" ...

  5. View绘制详解,从LayoutInflater谈起

    自定义View算是Android开发中的重中之重了,很多小伙伴可能或多或少都玩过自定义View,对View的绘制流程也有一定的理解.那么现在我想通过几篇博客来详细介绍View的绘制流程,以便使我们更加 ...

  6. opencv里面CV_32FC1家族

    因为总是接触过这样一些#define里面的东西但是总也不知道是干什么用的.而且每看一次梦比一次. 对于这些东西到底是什么的简写根本就不能理解. 原意是跑一下这个例程的: cvRectangle( my ...

  7. 【shell】 I/O重定向

    1.基本概念  a.I/O重定向通常与 FD有关,shell的FD通常为10个,即 0-9:  b.常用FD有3个,为0(stdin,标准输入).1(stdout,标准输出).2(stderr,标准错 ...

  8. win7 X64可用的单文件IE6

    由于日常调试需要用到老版本的ie,没有办法!用ietest老师感觉不好使,动不动就死了.就找到了ie的单文件版,有博主 小明爱切糕制作,IE6.7.8单文件版本 http://www.cnblogs. ...

  9. PHP中长连接的实现

    最近遇到PHP程序在执行大量数据的时候提示超时,于是用到了set_time_limit()函数来设置PHP页面的最大运行时间. 设置允许脚本运行的秒数.如果这是默认的,该脚本返回一个致命的错误.默认限 ...

  10. scala学习笔记:理解stream和view

    先来个正常的: scala> (0 to 5).map((x:Int)=>{println(x);x*2}).foreach(println) 0 1 2 3 4 5 0 2 4 6 8 ...