linux g 使用教程,Linux系统中uniq命令的基本使用教程

uniq [选项] 文件

说明:这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。该命令加工后的结果写到输出文件中。输入文件和输出文件必须不同。如果输入文件用“- ”表示,则从标准输入读取。

该命令各选项含义如下:、

– c 显示输出中,在每行行首加上本行在文件中出现的次数。它可取代- u和- d选项。

– d 只显示重复行。

– u 只显示文件中不重复的各行。

– n 前n个字段与每个字段前的空白一起被忽略。一个字段是一个非空格、非制表符的字符串,彼此由制表符和空格隔开(字段从0开始编号)。

+n 前n个字符被忽略,之前的字符被跳过(字符从0开始编号)。

– f n 与- n相同,这里n是字段数。

– s n 与+n相同,这里n是字符数。

接下来通过实践实例说明:

复制代码代码如下:

[root@stu100 ~]# cat test

boy took bat home

boy took bat home

girl took bat home

boy took bat home

boy took bat home

dog brought hat home

dog brought hat home

dog brought hat home

看test文件的内容

复制代码代码如下:

[root@stu100 ~]# uniq test

boy took bat home

girl took bat home

boy took bat home

dog brought hat home

uniq命令不加任何参数,仅显示连续重复的行一次

复制代码代码如下:

[root@stu100 ~]# uniq -c test

2 boy took bat home

1 girl took bat home

2 boy took bat home

3 dog brought hat home

1

-c 参数显示文件中每行连续出现的次数。

复制代码代码如下:

[root@stu100 ~]# cat test |sort | uniq -c

1

4 boy took bat home

3 dog brought hat home

1 girl took bat home

排序后再显示

复制代码代码如下:

[root@stu100 ~]# uniq -d test

boy took bat home

boy took bat home

dog brought hat home

-d选项仅显示文件中连续重复出现的行。

复制代码代码如下:

[root@stu100 ~]# uniq -u test

girl took bat home

-u选项显示文件中没有连续出现的行。

复制代码代码如下:

[root@stu100 ~]# uniq -f 2 -s 2 test

boy took bat home

忽略每行的前2个字段,忽略第二 个空白字符和第三个字段的首字符,结果at home

复制代码代码如下:

[root@stu100 ~]# uniq -f 1 test

boy took bat home

dog brought hat home

忽 略每行的第一个字段,这样boy ,girl开头的行看起来是连续重复的行。

复制代码代码如下:

[root@stu100 ~]# uniq -D test

boy took bat home

boy took bat home

boy took bat home

boy took bat home

dog brought hat home

dog brought hat home

dog brought hat home

显示所有重复的行,每个重复的行都显示

当你有一个包含相同条目的雇员(employee)的文件,你可以以如下方式来删除相同的条目

复制代码代码如下:

$ sort namesd.txt | uniq

$ sort –u namesd.txt

如果你想知道有多少行是相同的,可以像下面这个做。以下例子中的第一列显示该行的重复数量。在本例中,以Alex和Emma开头的行,在文件中有两个重复行。

复制代码代码如下:

$ sort namesd.txt | uniq –c

2 Alex Jason:200:Sales

2 Emma Thomas:100:Marketing

1 Madison Randy:300:Product Development

1 Nisha Singh:500:Sales

1 Sanjay Gupta:400:Support

3. 以下命令仅仅列出了相同的条目

复制代码代码如下:

$ sort namesd.txt | uniq –cd

2 Alex Jason:200:Sales

2 Emma Thomas:100:Marketing

Linux系统中tr命令删除和替换文本字符的基本用法

通过使用tr,您可以非常容易地实现sed的许多最基本功能。您可以将tr看作为sed的(极其)简化的变体:它可以用一个字符来替换另一个字符,或者可以

Linux的命令行中一些文本操作技巧的实例分享

正则表达式翻译领域不乏让人摸不着头脑的词汇,比如句柄、套接字、鲁棒性。当然,正则表达式也属于这一类词汇。我刚接触正则表达式的时候,对

Linux中将网络管理器由NetworkManager切换为systemd-network

在Linux世界里,对systemd的采用一直是激烈争论的主题,它的支持者和反对者之间的战火仍然在燃烧。到了今天,大部分主流Linux发行版都已经采用了system

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值