bash - 使用 for 循环计算文本中来自 csv 的字符串的出现次数,并将其存储为 bash 中的新列
问题描述
我有一个 CSV 格式的名称列表。我还有一个 txt 格式的聊天文件,每次发送消息时都会显示此人的姓名。我试图计算他们的名字在聊天中出现了多少次,并在整个名字列表中循环。
当我尝试 for 循环时:
names=$(cat nameslist.csv | cut -d ',' -f1)
for n in $names; do
count=$(grep $n chat.txt | wc -l)
done
echo $count
我的 $count 输出只是“1”,所以我认为 for 循环中出了点问题,只显示最后一个值。
我究竟做错了什么?
最终我想创建一个 csv,其中有一列他们的名字和他们在聊天中出现的次数($count)。
解决方案
推荐阅读
- javascript - 如何在 Vue 应用程序中更新图表 js?
- python - 如何根据索引将单列中的 NaN 替换为 0
- python - 仅在按键事件后才在绘图循环中显示下一个绘图(Matplotlib 和 Python)
- java - 运行 Java 代码后从数据库中删除的记录
- c# - 无法加载文件或程序集“accord.video.ffmpeg.x64.dll”或其依赖项之一
- javascript - 循环显示 jQuery 对象以显示 3 个最新列表
- php - 当我尝试上传 30MB 文件时,“此页面无法正常工作”域名“当前无法处理此请求。HTTP ERROR 500”
- amazon-web-services - AWS 中的自动账户生成通知
- python - 如何输出最常用的字母?
- sql - Where 子句改变了我的 datediff 列的结果,我该如何解决这个问题?