多空格&多制表符文本之cut域分割终极方案

  • 问题
ifconfig ens33

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.216.133  netmask 255.255.255.0  broadcast 192.168.216.255
        inet6 fe80::250:56ff:fe39:8b4  prefixlen 64  scopeid 0x20<link>
        ether 00:50:56:39:08:b4  txqueuelen 1000  (Ethernet)
        RX packets 331849  bytes 383183238 (365.4 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 106683  bytes 35536979 (33.8 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

  • 解决方案
ifconfig ens33 | grep "inet " | tr '\t' ' '| tr -s ' '|cut -d ' ' -f 3

去重是使用“tr”命令,使用-s选项,命令为“tr -s " "”。

使用该命令对转换制表符为空格后的输出结果进行去除重复空格字符(只保留一个空格字符),其完整命令和输出如下所示:

cat file | tr “\t” " " | tr -s " "

©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页