首页 > 系统相关 >linux系统过滤ip地址总结

linux系统过滤ip地址总结

时间:2022-12-13 23:33:09浏览次数:58  
标签:ip ifconfig 过滤 awk Common linux print net

Perl模块用法
安装Perl模块
# 官网地址 https://metacpan.org/pod/Regexp::Common
# 下载地址 https://cpan.metacpan.org/authors/id/A/AB/ABIGAIL/Regexp-Common-2017060201.tar.gz
安装步骤
wget https://cpan.metacpan.org/authors/id/A/AB/ABIGAIL/Regexp-Common-2017060201.tar.gz
tar xf Regexp-Common-2017060201.tar.gz
cd Regexp-Common-2017060201/
perl Makefile.PL 
make
# apt/yum install make -y
make install

 # 过滤IPv6
ip a |perl -MRegexp::Common=net  -lnE 'say $& if /$RE{net}{MAC}/g'

 # 过滤IPv4
ip a |perl -MRegexp::Common=net  -lnE 'say $& if /$RE{net}{IPv4}/g'

 # 过滤MAC地址
ip a |perl -MRegexp::Common=net  -lnE 'say $& if /$RE{net}{IPv6}/g'
IPv4过滤常规方法

# 1、正则匹配过滤
ifconfig | awk '/inet / && $6 ~ /[0-9]/{print$2}'
ifconfig | grep -Po 'inet \K(?!127\.)\d{1,3}.\d{1,3}\.\d{1,3}\.\d{1,3}'
ip a | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"
ip a | sed -nr 's#.*inet ([^ ]+)\/.*#\1#p'
ip a | awk '$1=="inet"{split($2,a,"/");print a[1]}'  # awk split用法

# 2、按照段落读取
ifconfig | awk 'BEGIN{RS=""}{print $6}'

# 3、注意:多块网卡时,需要排除lo网卡,因为eth0顺序不能保证在第一段
ifconfig | awk 'BEGIN{RS="";FS="\n"}!/^lo:/{$0=$2;FS=" ";$0=$0;print $2;FS="\n"};'

# 4、其他获取IPv4的用法
ifconfig | grep "inet "|awk '{print $2}'
ip -4 -o a | awk '{split($4,a,"/");print a[1]}'
ip -br address | awk '{print substr($3,1,index($3,"/")-1);}'

 # 5、过滤网卡名称
ls -l /sys/class/net | awk '/devices/{print $(NF-2)}'
ifconfig | grep  "mtu" |awk -F": " '{print $1}'
eth0
lo
wg0

# 6、过滤物理网卡
ls -l /sys/class/net | awk '$NF~/pci0/ { print $(NF-2); exit }'


# 获取公网IP
curl -4 icanhazip.com 
curl http://ifconfig.me/ip
wget http://ipecho.net/plain -O - -q
wget -qO - icanhazip.com

# 添加获取本机IP地址的快捷命令
echo "alias myip=\"ifconfig | sed -En 's/127.0.0.1//;s/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p'\"">>/root/.bashrc 
==>myip

标签:ip,ifconfig,过滤,awk,Common,linux,print,net
From: https://www.cnblogs.com/mrqiao001/p/16980987.html

相关文章

  • linux常用命令2
    1、以下鉴定故障:有两种可能,其一密码输入错误;其二,未设置root密码。sudopasswdroot改密码就行。$su-su:鉴定故障2、......
  • 故事终章,NOIP2022
    挥之不去的梦魇没有前情提要Day0上午到机房,监督高一做题,因为没有高二和初中。午饭前后打了一会儿CS,被薄纱。午饭尝试了酸菜鱼面,差点吐了,直接倒掉。快下午才睡午觉......
  • linux find命令详解
    find是Linux中强大的搜索命令,可以按照文件名、权限、大小、时间、属主属组等,在指定目录下快速查找所需要的文件。命令所在路径:/bin/find。find命令语法语法:find[指定......
  • TypeScript:带属性关联的泛型对象解构问题研究
    TypeScript:带属性关联的泛型对象解构问题研究2020-08-24 1236简介: ##背景###利用泛型进行属性关联大家在业务中一定很熟悉这样的场景,针对某个action,传递一个指定......
  • Djiango框架:5、pycharm虚拟环境,视图层之三板斧、JsonResponse对象、request对象、FBV
    Django框架目录Django框架一、pycharm虚拟环境1、简介2、创建方法二、视图层1、视图层必会三板斧2、JsonResponse对象3、视图层之request对象获取文件4、request对象获......
  • 嵌入式linux_常用命令
    1linux挂载mount-tnfs-onolock-otcp-orsize=32768,wsize=32768192.168.1.164:/opt/01_sdk/rk3588-linux-release-20220227/01_nfs_3588/nfsrootmount:/nfs......
  • 1.linux连接、vim编辑器
    1.          window类似   shell控制台界面,进入:ctrl+alt+f2-f6中的一个返回图形界面:ctrl+alt+f1  ~代表处于主文件夹 linux一切皆文......
  • 入门Linux运维工程师需要掌握的知识点和工具以及技能
    Linux系统的学习,可以选用redhat或centos,特别是centos在企业中用得最多,当然还会有其它版本的,比如Ubuntu等,根据自己的工作情况和兴趣来定。当然不同发行版本主要是包上的区别......
  • linux详细命令大全(格式精简版自用)
    文件管理cd命令cd/use/localcd..cd-切换到上一次所在目录ls列出目录内容ls-l查看目录下的所有内容,以列表方式列出llll-a列出隐藏文件ll?*.cfg第......
  • Linux内核铁三角文章汇总
    最近发现一个word直接转换markdown的工具,因此尝试把以前整理的一些Linux内核文章发到博客上;首先整理一点Linux内核铁三角(进程、内存、IO)的文章:说明:1.这是之前学宋宝华老......