我想计算文档中的行数并将其按前缀词分组.前缀是由第一个下划线分隔的一组字母数字字符.我不太关心它们的排序,但是根据出现的次数列出它们会很好.
该文件如下所示:
prefix1_data1
prefix1_data2_a
differentPrefix_data3
prefix1_data2_b
differentPrefix_data5
prefix2_data4
differentPrefix_data5
输出应如下:
prefix1 3
differentPrefix 3
prefix2 1
我已经在python中做过这个但是我很好奇是否可以使用命令行或bash脚本更高效地执行此操作? uniq命令有-c和-w选项,但前缀的长度可能不同.
解决方法:
你可以使用awk:
awk -F_ '{a[$1]++}END{for(i in a) print i,a[i]}' file
字段分隔符设置为_.
数组a填充了所有第一个元素及其关联计数.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。