我需要从 csv 文件创建报告文件。
我有 160 台名为 的设备MR001
,MR160
每台设备都有一个文件夹,所有文件夹都有一个以 4 开头的唯一 ID,并且每天有一个名为 的 csv 文件MRNNN_Log_AAAAMMDD-NN.csv
。
csv文件内容如下:
MR092/16.11.2017/13:50:50-0300/WLLocalSearch/Error
MR092/16.11.2017/13:51:10-0300/WLLocalSearch/Hit
MR092/16.11.2017/13:51:25-0300/WLLocalSearch/NoHit
MR092/16.11.2017/13:51:35-0300/WLLocalSearch/Error
MR092/16.11.2017/13:51:41-0300/WLLocalSearch/Error
MR092/16.11.2017/13:52:02-0300/RemoteSearch/Captured
MR092/16.11.2017/13:52:53-0300/RemoteSearch/Hit
我正在尝试使用这样的命令:
#!/bin/bash
date=$1
find /path/4*/*_Log_$1*.csv -printf 'echo "$(grep -o "/WLLocalSearch/NoHit" %p | wc -l) %p";' | sh
find /path/4*/*_Log_$1*.csv -printf 'echo "$(grep -o "/WLLocalSearch/Hit" %p | wc -l) %p";' | sh
find /path/4*/*_Log_$1*.csv -printf 'echo "$(grep -o "/WLLocalSearch/Error" %p | wc -l) %p";' | sh
我像这样执行了脚本:
./report.sh AAAANN
输出如下
25 /path/path/MR001_Log_20190415-00.csv
4 /path/path/MR002_Log_20190415-00.csv
10 /path/path/MR007_Log_20190415-00.csv
7 /path/path/MR090_Log_20190415-00.csv
etc...
问题是我不知道如何计算每个类型和设备 ID 的总数,就像这样
MR001 Hit 10
MR002 Hit 5
ETC..