Sort

进行排序,而且可以依据不同的数据形态来排序

[root@www ~]# sort [-fbMnrtuk] [file or stdin]

选项与参数:

-f:忽略大小写的差异,例如A与a视为编码相同

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

-M:以月份的名字来排序,例如JAN,DEC等等的排序方法

-n:使用[纯数字]进行排序,(默认是以文字形态来排序的)

-r:反向排序

-u:就是uniq,相同的数据中,仅出现一行代表

-t:分隔符,默认是以[tab]来分隔的

-k:以那个区间(field)来进行排序

对/etc/passwd的账号进行排序

[root@www ~]# cat /etc/passwd | sort

adm:x:3:4:adm:/var/adm:/sbin/nologin

apache:x:48:48:Apache:/var/www:/sbin/nologin

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

sort 是默认以第一个数据来排序,而且默认是以字符串形式来排序,所以由字母 a 开始升序排序

/etc/passwd 内容是以 : 来分隔的,我想以第三栏来排序,该如何

[root@www ~]# cat /etc/passwd | sort -t ':' -k 3

root:x:0:0:root:/root:/bin/bash

uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin

operator:x:11:0:operator:/root:/sbin/nologin

bin:x:1:1:bin:/bin:/sbin/nologin

games:x:12:100:games:/usr/games:/sbin/nologin

默认是以字符串来排序的,如果想要使用数字排序:

cat /etc/passwd | sort -t ':' -k 3n

root:x:0:0:root:/root:/bin/bash

daemon:x:1:1:daemon:/usr/sbin:/bin/sh

bin:x:2:2:bin:/bin:/bin/sh

默认是升序排序,如果要倒序排序,如下

cat /etc/passwd | sort -t ':' -k 3nr

nobody:x:65534:65534:nobody:/nonexistent:/bin/sh

ntp:x:106:113::/home/ntp:/bin/false

messagebus:x:105:109::/var/run/dbus:/bin/false

sshd:x:104:65534::/var/run/sshd:/usr/sbin/nologin

如果要对/etc/passwd,先以第六个域的第2个字符到第4个字符进行正向排序,再基于第一个域进行反向排序。

cat /etc/passwd | sort -t':' -k 6.2,6.4 -k 1r

sync:x:4:65534:sync:/bin:/bin/sync

proxy:x:13:13:proxy:/bin:/bin/sh

bin:x:2:2:bin:/bin:/bin/sh

sys:x:3:3:sys:/dev:/bin/sh

查看/etc/passwd有多少个shell:对/etc/passwd的第七个域进行排序,然后去重:

cat /etc/passwd | sort -t':' -k 7 -u

root:x:0:0:root:/root:/bin/bash

syslog:x:101:102::/home/syslog:/bin/false

daemon:x:1:1:daemon:/usr/sbin:/bin/sh

sync:x:4:65534:sync:/bin:/bin/sync

sshd:x:104:65534::/var/run/sshd:/usr/sbin/nologin

uniq

uniq命令可以去除排序过的文件中的重复行,因此uniq经常和sort合用。

也就是说,为了使uniq起作用,所有的重复行必须是相邻的。

uniq语法:

[root@www ~]#uniq [-icud]

选项与参数:

-i:忽略大小写字符的不同

-c:显示每行的重复次数

-u:只显示未曾重复过的行

-d:仅显示重复的行

wc

统计文件里面有多少单词,多少行,多少字符。

语法:

[root@www ~]#wc [-lwm]

选项与参数:

-l:仅列出行数

-m:字符数

-w:仅列出多少个字(英文单词数)

wc的命令比较简单,就不一一举例说明了。

linux wc -l命令,Linux wc sort和uniq的用法相关推荐

  1. linux下的wc -l命令,Linux下wc工具的简单实现

    wc工具是Linux下一款强大的统计字符数,单词数,行数的工具.其实实现挺简单的.我做了一简单的实现: #include #include #define LEN 4096 int text_c(FI ...

  2. linux wc -l效率,Linux wc命令详解

    wc常见命令参数 wc -l : 统计行 wc -c: 统计字节数 wc -m:统计字符数,不能与-c同时使用 wc -w:统计字数 wc -L:打印最长长度 注意: wc 可以直接后面跟文件使用,但 ...

  3. linux 上使用wc -l命令快速查看文件内容有多少行,以及如何匹配指定字符查看多少行

    1 linux的cat -n命令查看文件内容一共有多少行 1.cat -n命令查看文件多少行 cat -n filename 如:cat -n gallery_color_depth.txt - 2. ...

  4. linux之ls -l|grep “^-“|wc -l命令

    一.命令解释 1.1 含义 ls -l|grep ^-| wc -l在Linux中的作用是查看当前目录内的文件数量(不包含子目录中的文件),其中用管道|分为了三段,下面来解释下每一段的含义: ls - ...

  5. 【Linux】linux下wc -l 命令

    1.wc命令说明 1)wc(Word Count) 命令作用:统计指定文件中的字节数.字数.行数,并将统计结果显示输出. 2)命令参数及含义: -c, --bytes:统计字节数 -m, --char ...

  6. linux ssh注册码,linux ssh -l 命令运用

    ssh是远程登录命令,-l选项是最常用的选项,下面是我的一些总结 远程登录:ssh  -l  userName  ip # 远程登录到 10.175.23.9 ssh -l root2 10.175. ...

  7. linux系统print命令,Linux系统命令大全

    命令是Linu__操作系统的利器,务必掌握好,当然不可能一下子熟练掌握,但是只要多加练习,就可熟能生巧,运用自如.下面就让小编带你去看看那些Linu__系统命令大全,希望能帮助到大家! 教程 | Li ...

  8. linux看配置命令,Linux下命令行查看系统配置

    1 查看CPU 1.1 查看CPU个数 # cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 2 **uniq命令:删除重 ...

  9. linux shell 未找到命令,未找到linux问题setenv命令(linux issue setenv command not found)

    未找到linux问题setenv命令(linux issue setenv command not found) 我在Linux中开发了一个Tcl / Tk脚本工具. 为了运行该工具,每次需要在she ...

  10. linux新建自定义命令,Linux 创建自定义命令

    Linux 创建自定义命令 Linux 可以创建自定义使用命令 这里我们采取使用"alias"命令.这里我们首先了解两个文件,通过这两个文件我们可以根据环境配置相应的自定义命令. ...

最新文章

  1. BZOJ1001 狼抓兔子
  2. 高性能dhcp服务器,基于线程池机制的高性能DHCP服务器研究与实现
  3. mysql hugepage_因未配置Hugepage会话数添增悲剧案例
  4. 【Linux】Linux的常用远程工具
  5. linux svn 搭建
  6. caas k8s主控节点如何查询_k8s中部署prometheus监控告警系统prometheus系列文章第一篇...
  7. python锁机制_Python并发编程之谈谈线程中的“锁机制”(三)
  8. 二叉树中和为某一值的路径(一)(C++)
  9. 第二课 了解编程环境
  10. 服务器重装系统需要按什么,安装服务器系统前我们该做些什么
  11. 长期主义:永远做你余生中最重要的事!
  12. U盘分区删除和新建分区
  13. 推荐一个巨好用的查看gihub源码的插件-Octotree
  14. SQL语句中查找字符的位置
  15. java 怎么让图片运动,小编给你传授java怎么实现键盘控制图片移动
  16. STM32F429外部SPI下载算法
  17. 《Windows程序设计》读书笔七 鼠标
  18. 传奇怎么设置GM帐号GM命令
  19. JAVA - Thymeleaf
  20. 解决UnsatisfiedLinkError: Unable to load library:Native library not found in resource path

热门文章

  1. android x86显卡驱动,全系列显卡精简版纯驱动(Windows_6.x_VGA_Drivers_lite_x86x64)(2016.09.12)...
  2. 安全教育平台账号后四位_安全教育平台登录账号是什么?
  3. nyoj 16 矩形嵌套第七届河南省acm省赛H题
  4. 01分数规划解析(转载)
  5. java if if else语句_Java if else条件判断语句用法
  6. Softmax 回归 + 损失函数 + 图片分类数据集 动手学深度学习v2 pytorch
  7. Mac 命令行 Terminal 安装My Zsh,替换默认的Bash
  8. 命令行Terminal增加proxy开关
  9. linux编程基础系统,Linux编程基础
  10. mysql 查询建表详情_MySQL 查看数据表结构以及详情的方法