我有一个文本文件,其中包含大量以制表符分隔的数据.我想看看数据,这样我就能看到列中的唯一值.例如

Red     Ball 1 Sold
Blue    Bat  5 OnSale
............... 

就像第一列有 colored颜色 一样,我想知道这列中有多少不同的唯一值,我想对每列都这样做.

我需要在Linux命令行中执行此操作,所以可能需要使用一些bash脚本、sed、awk或其他东西.

如果我也想数一数这些独特的价值观呢?

更新:我想我没有把第二部分讲清楚.我想做的是计算这些独特值中的"每一个",不知道有多少独特值.例如,在第一栏中,我想知道有多少红色、蓝色、绿色等 colored颜色 的物体.

推荐答案

您可以使用cutsortuniq命令,如下所示:

cat input_file | cut -f 1 | sort | uniq

获取字段1中的唯一值,将1替换为2将获得字段2中的唯一值.

避免UUOC:)

cut -f 1 input_file | sort | uniq

EDIT:

要计算唯一事件的数量,可以使用链中的wc命令:

cut -f 1 input_file | sort | uniq | wc -l

Linux相关问答推荐

抛出主,即未捕获到SIGSEGV中的异常结果

为什么我们不能使用${$#}来获取传递给shell 脚本的最后一个参数?

条件句if的正确写法是怎样的?

将 Visual Studio C++ 项目迁移到 Linux 和 CMake

我需要制作一个 awk 脚本来解析文件中的文本.我不确定我是否做得正确

使用 bash 中的数字对 RPM 内核字符串进行版本排序返回不正确的结果

Linux time 命令输出中 real、user 和 sys 的含义

安装 mod_ssl 亚马逊 Linux

未定义的引用 'shm_open',已在此处添加 -lrt 标志

如何克隆 OpenLDAP 数据库

何时判断 EINTR 并重复函数调用?

将 $_GET 参数传递给 cron 作业(job)

如何 grep 精确的文字字符串(无正则表达式)

在 VIM 中搜索和替换导致尾随字符

在 Emacs 中匹配括号的命令是什么?

试运行 cron 条目

比较文件的日期 bash

ldconfig 错误:使用 Linux 加载程序时不是符号链接

当将信号量减为零的进程崩溃时,如何恢复信号量?

如何查看线程在哪个 CPU 内核中运行?