【Linux】排序命令uniq

  很多时候,我们都会去计算一次数据里头的相同型态的数据总数,举例来说, 使用 last
可以查得这个月份有登陆主机者的身份。那么我可以针对每个使用者查出他们的总登陆次数吗? 此时就得要排序与计算之类的命令来辅助了!我们已经介绍过了排序命令sort,如果我排序完成了,想要将重复的数据仅列出一个显示,可以怎么做呢?


[[email protected] ~]# uniq [-ic]
选项与参数:
-i :忽略大小写字符的不同;
-c :进行计数

范例一:使用 last 将账号列出,仅取出账号栏,进行排序后仅取出一位;
[[email protected] ~]# last | cut -d ‘ ‘ -f1 | sort | uniq

范例二:承上题,如果我还想要知道每个人的登陆总次数呢?
[[email protected] ~]# last | cut -d ‘ ‘ -f1 | sort | uniq -c
1
12 reboot
41 root
1 wtmp
# 从上面的结果可以发现 reboot 有 12 次, root 登陆则有 41 次!
# wtmp 与第一行的空白都是 last 的默认字符,那两个可以忽略的!

  这个命令用来将『重复的行删除掉只显示一个』,举个例子来说,
你要知道这个月份登陆你主机的用户有谁,而不在乎他的登陆次数,那么就使用上面的范例,
(1)先将所有的数据列出;(2)再将人名独立出来;(3)经过排序;(4)只显示一个!
由于这个命令是在将重复的东西减少,所以当然需要『配合排序过的文件』来处理啰!

  参考资料:http://vbird.dic.ksu.edu.tw/linux_basic/0320bash.php#uniq

时间: 2024-08-11 19:09:35

【Linux】排序命令uniq的相关文章

Linux去重命令uniq(转)

Linux uniq命令用于检查及删除文本文件中重复出现的行列. uniq可检查文本文件中重复出现的行列. 语法 uniq [-cdu][-f<栏位>][-s<字符位置>][-w<字符位置>][--help][--version][输入文件][输出文件] 参数: -c或--count 在每列旁边显示该行重复出现的次数. -d或--repeated 仅显示重复出现的行列. -f<栏位>或--skip-fields=<栏位> 忽略比较指定的栏位. -

Linux排序命令sort(转)

Linux sort命令用于将文本文件内容加以排序.sort可针对文本文件的内容,以行为单位来排序. 语法 sort [-bcdfimMnr][-o<输出文件>][-t<分隔字符>][+<起始栏位>-<结束栏位>][--help][--verison][文件] 参数说明: -b 忽略每行前面开始出的空格字符. -c 检查文件是否已经按照顺序排序. -d 排序时,处理英文字母.数字及空格字符外,忽略其他的字符. -f 排序时,将小写字母视为大写字母. -i 排

sort排序命令 uniq 去除排序过的文件中的重复行 cut提取命令 wc 统计命令

sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 [[email protected] ~]# sort [-fbMnrtuk] [file or stdin] 选项与参数: -f :忽略大小写的差异,例如 A 与 a 视为编码相同: -b :忽略最前面的空格符部分: -M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法: -n :使用『纯数字

Linux常用命令--uniq

1.功能:输出或删除重复行,但是相同的行要在相邻行才行 2.语法:uniq [OPTION]... [INPUT [OUTPUT]] 3.参数: -c, --count 在每列的旁边显示重复出现的次数 -d, --repeated 仅显示重复出现的行 -D, --all-repeated[=delimit-method] 显示所有出现的重复行 -f, --skip-fields=N 跳过前N行 -i, --ignore-case 忽略大小写 -s, --skip-chars=N 跳过前N个字符

linux 排序命令sort

sort [选项] [文件] 选项: -b:忽略每行前面开始出的空格字符: -c:检查文件是否已经按照顺序排序: -d:排序时,处理英文字母.数字及空格字符外,忽略其他的字符: -f:排序时,将小写字母视为大写字母: -i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符: -m:将几个排序号的文件进行合并: -M:将前面3个字母依照月份的缩写进行排序: -n:依照数值的大小排序: -o<输出文件>:将排序后的结果存入制定的文件: -r:以相反的顺序来排序: -t<分隔字

Linux管线命令 - cut,grep,sort,uniq,wc,tee,tr,col,join,paste,expand,split,xargs

在每个管线后面接的第一个数据必定是『命令』喔!而且这个命令必须要能够接受 standard input 的数据才行,这样的命令才可以是为『管线命令』,例如 less, more, head, tail 等都是可以接受 standard input 的管线命令啦.至于例如 ls, cp, mv 等就不是管线命令了!因为 ls, cp, mv 并不会接受来自 stdin 的数据. 也就是说,管线命令主要有两个比较需要注意的地方: 管线命令仅会处理 standard output,对于 standar

【Linux】排序命令sort

很多时候,我们都会去计算一次数据里头的相同型态的数据总数,举例来说, 使用 last 可以查得这个月份有登陆主机者的身份.那么我可以针对每个使用者查出他们的总登陆次数吗? 此时就得要排序与计算之类的命令来辅助了!底下我们介绍几个好用的排序与统计命令,首先是排序命令sort. [[email protected] ~]# sort [-fbMnrtuk] [file or stdin] 选项与参数: -f :忽略大小写的差异,例如 A 与 a 视为编码相同: -b :忽略最前面的空格符部分: -M

Linux下命令sort, uniq

标题:sort, uniq 一.sort命令的使用       1. 作用:sort命令顾名思意,其可以帮助我们进行排序,而且可以依据不同的数据类型来排序.例如数字和文字的排序就不一样,sort可以指定不同的选项从而使得排序依据也不同,影响排序结果. 2. 选项: -f:忽略大小写的差异,例如A与a视为编码相同: -b:忽略最前面的空格部分: -M:以月份的名字来排序,例如JAN,DEC等的排序方法: -n:使用“纯数字”进行排序(默认是以文字类型来排序的): -r:反向排序 -u:uniq,

linux ps命令,查看某进程cpu和内存占用率情况, linux ps命令,查看进程cpu和内存占用率排序。 不指定

背景:有时需要单看某个进程的CPU及占用情况,有时需要看整体进程的一个占用情况.一. linux ps命令,查看某进程cpu和内存占用率情况[[email protected] vhost]# ps auxUSER       PID  %CPU    %MEM    VSZ   RSS TTY      STAT    START   TIME COMMAND解释:linux 下的ps命令USER 进程运行用户PID    进程编号%CPU 进程的cpu占用率%MEM 进程的内存占用率VSZ