sort,uniq,wc指令简单用法

sort用于排序,可以根据不同的数据类型来进行排序,例如想要查看最后一个登陆的用户信息,可以把last和sort结合起来使用,按照登陆时间排序。

使用sort排序:

sort常用参数:

-f :忽略大小写的差异

-b:忽略最前面的空格符部分

-M:以月份的名字排序

-n:使用纯数字排序(默认为以文字类型排序)

-r:反向排序

-u:去除重复行,重复的数据只显示一次

-t:分隔符,默认为tab为分隔符

-k:以哪个区间来排序

[[email protected] test]$ last | sort
 
reboot  system boot  2.6.32-696.el6.x MonAug 21 19:42 - 03:22  (07:40)   
reboot  system boot  2.6.32-696.el6.x SunAug 20 22:50 - 03:08  (04:17)   
reboot  system boot  2.6.32-696.el6.x ThuAug 17 18:38 - 02:57  (08:18)   
reboot  system boot  2.6.32-696.el6.x ThuJul 20 03:25 - 18:03  (14:37)   
reboot  system boot  2.6.32-696.el6.x WedAug 23 01:17 - 03:15  (01:57)   
reboot  system boot  2.6.32-696.el6.x WedAug 23 18:15 - 20:14  (01:58)   
reboot  system boot  2.6.32-696.el6.x WedJul 19 09:39 - 03:24  (17:45)   
whx    pts/0     :0.0       Thu Aug 17 18:40 - 02:57  (08:16)   
whx    pts/0     :0.0       Thu Jul 20 03:23 - down  (00:01)   
...

以:为分隔符,以第4区间按照数字排序:

[[email protected] test]$ cat  /etc/passwd | sort -t ‘:‘ -k 4 -n
halt:x:7:0:halt:/sbin:/sbin/halt
operator:x:11:0:operator:/root:/sbin/nologin
root:x:0:0:root:/root:/bin/bash
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
sync:x:5:0:sync:/sbin:/bin/sync
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

使用sort排序并去除重复数据:

[[email protected] test]$  last | cut -d ‘ ‘ -f 1 |sort -u
 
reboot
whx
wtmp

也可以用uniq来去除重复数据:

[[email protected] test]$ last | cut -d ‘ ‘ -f1 |sort|uniq
 
reboot
whx
wtmp

uniq 的作用是将重复行去重,使得显示出来的每一行都是唯一的,配合参数也可以只查看文件中有哪些重复的行,重复次数是多少,例如查看每个用户的登陆总次数。

参数:

-c:统计次数

-i:忽略大小写

-d:列出重复的行

-u:列出不重复的行

使用sort排序并去除重复数据,统计出现次数:

[[email protected] test]$ uniq -c ./test.txt
     3 >  test test  def def def acb
     2 >  test1 test  def def def acb
     1 >  test1 test  def def def ac

查看每个用户的登陆总次数:

[[email protected] test]$ last | cut -d ‘ ‘ -f1 |sort |uniq -c
     1
     7 reboot
    25 whx
     1 wtmp

不添加参数(列出文件中行,重复的行只显示一次)

[[email protected] test]$ uniq ./test.txt
> test test  def def def acb
> test1 test  def def def acb
> test1 test  def def def ac

使用-d参数列出重复行,每个重复的行显示一次;

[[email protected] test]$ uniq -d ./test.txt
> test test  def def def acb
> test1 test  def def def acb

使用-u参数列出不重复的行

[[email protected] test]$ uniq -u ./test.txt
> test1 test  def def def ac

wc用于统计文件行数,字数,字符数等信息。

参数:

-l:仅列出行数量

-w:仅列出字数量

-m:仅列出字符数量

统计last的行数,字数,字符数:

[[email protected] test]$ last | wc
    34     334    2502  -- 依次代表行数,字数,字符数

查看test.txt的行数,字数,字符数:

[[email protected] test]$ wc ./test.txt
 6  42 183 ./test.txt

查看test.txt的字节数:

[[email protected] test]$ wc -c ./test.txt
183 ./test.txt
时间: 2024-11-02 01:09:26

sort,uniq,wc指令简单用法的相关文章

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

05,文本处理cat more less head tail sort uniq wc tr grep cut jion sed awk ok

文本处理cat more less head tail sort uniq grep cut jion sed awk ################################################ cat:concatenate files and print on the standard output 显示文件内容到标准输出(显示器) -e:显示最后一个结尾的字符 -n:显示行编号 [[email protected] ~]# cat -n /etc/shells 1  

Linux sort uniq 命令。简单运用

-n                              #代表以数字方法排序,如果倒序加上-r -t ':'                          #-t指定分隔符-k                           #指定第几列 ---------------------------------------------------------------------- 文本如下: root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:

linux下 sort | uniq | wc | less 几个命令的基本用法

sort -f :忽略大小写的差异,例如 A 与 a 视为编码相同: -b :忽略最前面的空格符部分: -M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法: -n :使用『纯数字』进行排序(默认是以文字型态来排序的): -r :反向排序: -u :就是 uniq ,相同的数据中,仅出现一行代表: -t :分隔符,默认是用 [tab] 键来分隔: -k :以那个区间 (field) 来进行排序的意思 uniq -i :忽略大小写字符的不同: -c :进行计数 -u :只显示唯一的行

0219自学Linux_bash特性+命令学习(cut,sort,uniq,wc,tr,histroy,alias)+通配符glob

09 GPL,BSD,Apache三个开源协定的大体联系及其区别 1.自由软件,版权描述:但是照样是有版权的 2.开源协定,版权描述 www.kernel.org内核版本的版本号查看网址,也是官网 查看最新kernel的最新版本,www.kernel.org习惯了解 列出linux发行版和linux内核的关系 Lniux发行版,GUN:GUN/Linux. 源代码:必须要编译才可以运行,所以发行版是已经将源代码已经编译完成的东西,组合在一起,就形成了发行版,主流的三大发行版:Fedora:它为r

linux常用命令-文本处理cut,sort,uniq,wc,tr

cut:截取文本特定字段 NAME       cut - remove sections from each line of files -d, --delimiter=DELIM(指定字段分隔符,默认是空格) use DELIM instead of TAB for field delimiter -f, --fields=LIST(指定要显示的字段) select  only  these  fields;  also print any line that contains no del

linux cat,tac,more,less,head,tail,cut,sort,uniq,wc,tr命令的使用

cat:连接并显示,比如: [[email protected] ~]# cat /tmp/sort.test  111 324 567 324 890 890 567 abc 加上选项-n会显示行号: [[email protected] ~]# cat -n /tmp/sort.test      1111      2324      3567      4324      5890      6890      7567      8abc 加上-E选项会显示行尾符$:(linux中行尾

cat   cut   paste sort uniq diff 等命令用法

cat命令: cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容. cat  选项  参数 -n  :给所有输出的行数编号 -E  :显示每行的行结束符 -T  :制表符 -v  :显示非打印字符 -s  :当遇到有连续两行以上的空白行,就代换为一行的空白行 tac与cat反向显示 rve行内反着显示 例: [[email protected] ~]# rev /etc/passwd hsab/nib/:toor/:toor:0:0:x:toor 2.less命令: less

linux学习记录——sort,uniq,wc,tr

文本排序:sort xx 升序 -n 升序 按数值大小 -r 降序 -t 指定字段分隔符 -k 指定以哪个字段为关键字排序   sort -t:  -k3 /etc/passwd -u 排序后相同的行只显示一次 -f 忽略大小 uniq 判断是否重复的行.(相邻并且完全相同的行才能算重复的行) 因此可以先用sort排序再uniq -d 只显示重复的行. -D 显示所有重复的行. -c 显示每一行重复的次数 (类似于sql的group by + count ) wc 文本统计 word count