【Linux 排序命令之 sort, wc, uniq】教程文章相关的互联网学习教程文章

Linux 排序命令之 sort, wc, uniq

sort, wc, uniq 等命令组合使用,可以快速帮助我们进行排序。 1.sort sort命令可以用来排序,且可以根据不同的数据类型排序。(数字,文字) 排序字符也和编码有关,建议使用LANG=C来让语系统一。 (1)语法 sort [参数] [file or stdin] (2)参数-f :忽略大小写 -b :忽略最前面的空格 -n :以纯数字进行排序 (默认是以文字排序) -u :uniq ,去重 -t :分隔符,默认TAB键分隔符 -k :以某个域进行排序(3)实例将内容以:符号进...

linux找到占用空间比较大的文件夹并按大小排序输出【代码】

find /home -type d -exec du -s -m {} \; | sort -nr | head -50/home是路径,可以按需修改(尽量缩小路径范围,根目录慎用,因时间太久) -m的单位是MB,可用-g或-k替换代表GB和KB,输出的左边第一列就是文件夹占用的磁盘空间大小。 -50是输出前50行,也可以根据需求自由改变数字的大小 好用的话帮忙点个赞,谢谢!

Linux Sort 按照某一列排序(转)【代码】

转载:https://segmentfault.com/a/1190000005713784 sort是在Linux里非常常用的一个命令,管排序sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。使用方法:sort [选项]... [文件]...长选项必须用的參数在使用短选项时也是必须的。顺序选项: 多列排序 一、准备素材 第一个域是公司名称,第二个域是公司人数,第三个域是员工平均工资。$ cat duweixin.net.t...

linux下利用pthread做多线程归并排序【代码】【图】

#include <stdio.h> #include <pthread.h> #include <stdlib.h>typedef struct ThreadData {int start, end;//待排序的范围int* array;//数组指针int length;//数组的长度 }ThreadData;//函数原型声明 void p_mergeSort(ThreadData* data); void merge(int array[], int length, int left, int m, int right); void mergeSort(int array[], int length, int start, int end);//方便pthread_create调用,和mergesort之间做一个接口 ...

linux-继承的UNIX排序命令【代码】

我是Linux新手.我继承了一个Java程序,该程序曾经在UNIX上运行,现在在Linux上运行.代码中包含一个shell命令sort -n +1 -2 +0 -1n我从手册中了解到,这是从第二列(1)开始对文件进行数字排序(-n),但我不理解“ -2 0 -1n”部分要完成的工作.有人可以告诉我这是做什么的吗?感谢您提供相同的Linux语法解决方案. 在此先感谢您的帮助解决方法:sort -n 1 -2 0 -1n是sort -n -k2,2 -k1,1n的旧语法.参见this reference.

linux排序,选择最后一行,管道到新文件【代码】

我有一系列的多个文件.我想对这些文件进行排序,从每个文件中选择最底行,然后将这些行通过管道传送到新的单个文件中. 我的文件如下所示:1, 100, 2.5 2, 100, 3.3 3, 100, 5.1 4, 100, 1.2这些文件都命名为51_Sur_extracted_data.csv 这些文件位于父目录中,如下所示: Track_0001 / output_dfsu / 51_Sur_extracted_data.csvTrack_0002 / output_dfsu / 51_Sur_extracted_data.csv 因此,我想对第三列上的所有csv文件进行排序...

linux-降序排序非常小的数字【代码】

我的输入文件为:Helguson 1.11889675673e-06 CAPTION_spot 1.37407731642e-07 Earning 1.20657023177e-06 340km 6.82228429758e-07 Mortimer 3.08700799033e-07 yellow 6.26784196571e-06 four 0.000271117940104 Pronk 5.79848408861e-07 jihad 3.25632057648e-07我想按第二列的降序排序,因此,我尝试使用linux命令:sort -k2 -nr input.txt > output.txt我的输出生成为:340km 6.82228429758e-07 yellow 6.26784196571e-06 Pronk...

linux-如何按特定列对CSV文件排序?【代码】

我想按以下方式对csv进行排序,我想要的是 >按第2列排序>如果列相同,则按第3列排序(按数字) 这是我的工作:$sort -t"," -k2 -nk3 /tmp/test.csv 55b64670abb9c0663e77de84,525e3bfad07b4377dc142a24:9999,0.081032 5510b33ec720d80086865312,525e3bfad07b4377dc142a24:9999,0.081033 55aca6a1d2e33dc888ddeb31,525e3bf7d07b4377d31429d2:2,0.081034 55aca6a1d2e33dc888ddeb31,525e3bf7d07b4377d31429d2:2,0.081034 5514548ec720d...

linux-对具有不一致字段的行进行排序【代码】

我有一个文本文件,其中包含如下名称:cup-1.5.1-1_d03.rpm cup-1.5-2_d03.rpm cup-1.5.1-2_d03.rpm cup-1.5-3_d03.rpm我知道cup-1.5.1-2_d03.rpm应该是最新版本.有没有一种方法可以对其进行正确排序,以便输出看起来像这样,cup-1.5-2_d03.rpm cup-1.5-3_d03.rpm cup-1.5.1-1_d03.rpm cup-1.5.1-2_d03.rpm我试过了$grep -o -P '(?<=cup-)[0-9]+.[0-9]+.*[0-9]+(?=.*.rpm)' a.txt | tr '.' ' ' | tr '-' ' ' | sort -k4 1 5 2_d03 1 ...

Linux-根据文件名中的数字索引对目录中的文件进行排序【代码】

我在我的脚本中使用了for循环,就像这样…for var in ipsec_packet*.txt; doecho $vardone输出量ipsec_packet10.txt ipsec_packet11.txt ipsec_packet12.txt ipsec_packet13.txt ipsec_packet14.txt ipsec_packet15.txt ipsec_packet16.txt ipsec_packet17.txt ipsec_packet18.txt ipsec_packet1.txt ipsec_packet2.txt ipsec_packet3.txt ipsec_packet4.txt ipsec_packet5.txt ipsec_packet6.txt ipsec_packet7.txt ipsec_packet8....

Linux AWK排序降序不起作用【代码】

我有两个文件需要排序. 我正在使用的命令是:cat first-in.txt | awk '{print $2}' | cut -d '/' -f 3 | cut -d '^' -f 1 | sort -b -t . -k 1,1nr -k 2,2nr -k 3,3r -k 4,4r -k 5,5r | uniq > first-out.txtcat second-in.txt | awk '{print $2}' | cut -d '/' -f 3 | cut -d '^' -f 1 | sort -b -t . -k 1,1nr -k 2,2nr -k 3,3r -k 4,4r -k 5,5r | uniq > second-out.txt问题是:我需要按降序正确排序,因为现在,只有文件2正确排序...

linux-仅使用k1,1执行排序【代码】

假定您具有以下内容的未排序文件:identifier,count=Number identifier, extra information identifier, extra information ...我想对这个文件进行排序,以便对于每个id,首先写上带有计数的行,然后写上带有额外信息的行.我只能将sort unix命令与选项-k1,1一起使用,但可以稍作更改以进行这种排序. 举个例子a,Count=1 a,giulio aa,Count=44 aa,tango aa,information ee,Count=2 bb,que f,Count=3 b,Count=23 bax,game f,ee c,Count=3 ...

linux-在不丢失原始排序顺序的情况下进行子排序?【代码】

我的文件夹中有一堆文件,它们的命名结构看起来像这样:FOOBAR_1A.8_Alice.pdf FOOBAR_1A.9_Bob.pdf FOOBAR_1B.10_Foo.pdf FOOBAR_1B.11_Bar.pdf FOOBAR_1B.12_Jack.pdf FOOBAR_1B.1_Jill.pdf FOOBAR_1B.2_John.pdf FOOBAR_1B.3_Mary.pdf为了实现上述排序顺序,我进行了第一个排序迭代,如下所示: 找 . -type f -name“ * .pdf” -print |切-d’/’-f2 |分类 但是正如您所看到的,2012年10月11日打印在1/2/3之前. 我尝试将管道重新排序...

我不理解的Linux排序顺序【代码】

我注意到以下排序输出.谁知道为什么.第一次排在前面,第二次排在末? 我试图调试一个程序,该程序在一个大的已排序文件中查找行,但是罪魁祸首似乎是我对linux sort的期望/理解.$sort --debug sort: using ‘en_US.UTF-8’ sorting rules /mnt/x/E /mnt/x/. <ctrl-D> /mnt/x/. ________ /mnt/x/E ________ $sort --debug sort: using ‘en_US.UTF-8’ sorting rules /mnt/x/Ed /mnt/x/.T <ctrl-D> /mnt/x/Ed _________ /mnt/x/.T ____...

如何在Linux中按特定部分对文件名进行排序?【代码】

这个问题已经在这里有了答案: > How can I sort file names by version numbers? 5个我的构建文件夹中有很多文件,我正在尝试使用sort命令对它们进行排序. 文件的结构如下: 名称-版本-‘v’-建立日期xxx-2.0.0-SNAPSHOT-V2014-07-10_18-01-05.logxxx-2.0.0-SNAPSHOT-V2014-07-10_18-02-05.logxxx-2.0.0-SNAPSHOT-V2014-07-10_18-03-05.logxxx-2.0.0-SNAPSHOT-V2014-07-...