如何在Linux中使用壳命令统计某列去重后的值

  介绍

这篇文章将为大家详细讲解有关如何在Linux中使用壳命令统计某列去重后的值,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

需求:根据MAC获取,MAC对应的硬件版本和软件版本。在根据硬件版本统计MAC的数量

,美元head  test_1。txt

00:07:67, EC2108, HWV010537P0000
00:07:63, Z83, ZNV861010P1225
00:07:67, EC6108V9U_ca_sccdx, HWV218012P0000
00:07:63, SBox8900hisi3716V3, ZGV865012P0001
00:07:67, EC6108V9U_ca_sccdx, HWV218012P0000
00:21:26, EC6108V9U_ca_sccdx, HWV218012P0000
00:07:67, EC6108V9U_ca_sccdx, HWV218012P0000
00:07:63, stbhd - st7105 - 000, ZTV70433089P0002
00:21:26, EC6108V9U_ca_sccdx, HWV215012P0000
00:21:26, EC6108V9U_ca_sccdx, HWV218012P0000

<强>第二列去重

,美元cat  test_2.txt  |, awk  -F  & # 39; & # 39;, & # 39; {print  $ 2} & # 39;, |, sort  |, uniq

EC2108
EC6108V9U_ca_sccdx
SBox8900hisi3716V3
stbhd - st7105 - 000
Z83

<强>将字符串转化为列表

import 操作系统   时间=path “C: \ \ \ \ \ \用户管理员桌面\ \机顶盒\ \ dd.txt"   时间=read 开放(路径,“r")   时间=list_  []   for  line 拷贝;阅读:   时间=line_ 才能;line.strip ()   list_.append才能(line_)   打印(list_)

根据厂商和硬件版本获取对应的软件版本

<强>方法一:

GET 收集- 012 - 20180109/_search   {   ,“size": 0,,   ,“aggs": {   “1”:才能,{   ,才能“terms":, {   ,,,“field":,“dev_hard_ver"   ,,,“size": 200   ,,},   ,才能“aggs":, {   ,,,,2,:,{   ,,,,“terms":, {   ,,,,,“field":,“soft_ver"   ,,,,,“size": 1   ,,,,}   ,,,}   ,,}   ,,}   ,}   }

<>强方法二:

import 操作系统   得到elasticsearch  import  Elasticsearch   时间=path “C: \ \ \ \ \ \用户管理员桌面\ \机顶盒\ \ fact_stb.txt"=write_file 开放(路径,“+”)   时间=es  Elasticsearch ()   def  get_Data (dev_hard_ver dev_vendor_name):   index_ =,才能“收集- 012 - 20180109 -“;   尝试才能:   ,,,rs =, es.search(指数=index_,身体={   ,,,,,“size":, 1,   ,,,,,,“query":, {   ,,,,,,,“bool":, {   ,,,,,,,,“must":,   ,,,,,,,,,{“term": {   ,,,,,,,,,,“dev_hard_ver":, {   ,,,,,,,,,,,“value": dev_hard_ver   ,,,,,,,,,,}   ,,,,,,,,,}   ,,,,,,,,},   ,,,,,,,,{   ,,,,,,,,,“term":, {   ,,,,,,,,,,“dev_vendor_name":, {   ,,,,,,,,,,,“value": dev_vendor_name   ,,,,,,,,,,}   ,,,,,,,,,}   ,,,,,,,,}   ,,,,,,,,)   ,,,,,,,}   ,,,,,,},   ,,,,,,“_source":, (“soft_ver",“dev_vendor_name",“dev_hard_ver"】   ,,,})   ,,,return  rs   除了才能:   ,,,return  1   null   null   null   null   null   null   null   null   null   null   null   null   null

如何在Linux中使用壳命令统计某列去重后的值