1. ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"​

命令解释如下:


  1. grep 'inet'             截取包含ip的行
  2. grep -v '127.0.0.1'     去掉本地指向的那行
  3. grep -v inet6           去掉包含inet6的行
  4. awk '{ print $2}'       $2 表示默认以空格分割的第二组 同理 $1表示第一组​
  5. tr -d "addr:            删除"addr:"这个字符串

输出结果:


  1. [root@master]# ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"
  2. 192.168.168.200

在另外一台机器上的输出结果是:


  1. [root@master]# ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "add:"
  2. 10.147.197.32
  3. 192.168.122.1

192.*.*.*    和  10.*.*.* 这两个网段是不同的,现在要实现在不同网段的IP地址打印不同的输出,shell脚本如下:


  1. #!/bin/sh
  2. ip=`ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"​`
  3. echo $ip
  4. if[[ $ip =="10."*]]
  5. then
  6. echo "该网段是10.*.*.*网段"
  7. else
  8. echo "该网段是192.*.*.*网段"
  9. fi

Linux Shell脚本中获取本机ip地址方法的更多相关文章

  1. shell脚本中获取本机ip地址的方法

    ipaddr='172.0.0.1' ipaddr=$(ip addr | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub(/(.*)\/(.*)/ ...

  2. shell中获取本机ip地址

    shell中获取本机ip地址 方法一: /sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr ...

  3. Windows下获取本机IP地址方法介绍

    Windows下获取本机IP地址方法介绍 if((hostinfo = gethostbyname(name)) != NULL) { #if 1 ; printf("IP COUNT: % ...

  4. shell脚本中获取当前所在目录地址

    shell脚本中获取当前所在目录如下 #!/bin/bash work_path=$() cd ${work_path} work_path=$(pwd) cd ${work_path}/src

  5. [转]Shell脚本中获取SELECT结果值的方法

    http://blog.itpub.net/13885898/viewspace-1670297/ 有时候我们可能会需要在Shell脚本中执行SELECT语句,并将结果赋值给一个变量,对于这样的情形, ...

  6. 在unity 脚本中获取客户端的IP地址

    需要using System.Net.NetworkInformation;原理就是获取网卡的信息. //下面这段代码是我在百度贴吧找来的,经检验是正确的 string userIp = " ...

  7. Shell 命令行获取本机IP,grep的练习

    Shell 命令行获取本机IP,grep的练习 在 mac 下面输入 ifconfig 或者在 linux 下面输入 ip a 就可以得到我们的网卡信息.不过通常情况下,我们需要查看的是我们的IP地址 ...

  8. 学习Linux shell脚本中连接字符串的方法

    这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...

  9. Linux shell脚本中shift

    Linux shell脚本中shift的用法说明 shift命令用于对参数的移动(左移),通常用于在不知道传入参数个数的情况下依次遍历每个参数然后进行相应处理(常见于Linux中各种程序的启动脚本). ...

随机推荐

  1. Python基础3--Python复杂数据类型

    1 堆 堆是一种二叉树,其中每个父节点的值都小于或等于其所有子节点的值,最小的元素总是位于二叉树的根节点. 堆的创建 import heapq import random data = range(1 ...

  2. Eclipse远程调试Tomcat

    1.Linux服务器中在Tomcat的catalina.sh文件添加如下内容: CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,ad ...

  3. js- caller、 callee

    caller 返回一个对函数的引用,该函数调用了当前函数.    functionName.caller     functionName对象 是所执行函数的名称.  说明        对于函数来说 ...

  4. 前端笔记 (1.HTML)

    近来一直在学习一些web的知识,主要是包括html,css,js和php,记录一下笔记,希望向和我一样刚学的朋友能提供帮助 这些笔记知识主要来源于菜鸟教程和w3school.我搭建了一个wampSer ...

  5. 2.9 iframe

    2.9 iframe 一.frame和iframe区别Frame与Iframe两者可以实现的功能基本相同,不过Iframe比Frame具有更多的灵活性. frame是整个页面的框架,iframe是内嵌 ...

  6. 牛客国庆集训派对Day4 J-寻找复读机

    链接:https://www.nowcoder.com/acm/contest/204/J 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 1048576K,其他语言20 ...

  7. C#并发编程之异步编程2

    C#并发编程之异步编程(二)   写在前面 前面一篇文章介绍了异步编程的基本内容,同时也简要说明了async和await的一些用法.本篇文章将对async和await这两个关键字进行深入探讨,研究其中 ...

  8. java-Arrays类

    1.Arrays类概述: - 针对数组进行操作的工具类. - 提供了排序,查找等功能. 2.成员方法: - 转换成字符串:public static String toString(int[] a)  ...

  9. C++学习(十六)(C语言部分)之 数组三

    复习 以及 测试 /* 一维数组 数组是相同的数据的一个集合 <类型><数组名>[下标表达式]={数组元素 初始值}; 数组名和变量的命名规则是一样的 数组名是一个地址 数组下 ...

  10. PS学习之餐饮行业修图

    素材 红烧肉 生菜 洋葱 目标效果 开始操作: 首先打开PS,将红烧肉素材放入  将红烧肉单另扣下来(用快随选择工具 按住Alt键是减选  抠图时  将画布放大 细细的扣) 然后创建一个和当前选区大小 ...