linux中如何对一个文本内容进行排序呢
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux中如何对一个文本内容进行排序呢相关的知识,希望对你有一定的参考价值。
参考技术A 文本文件的排序和linux没关系,你把文件拷出来excel
排序很方便,但文本文件直接复制进去,在一个单元格中
所以需要把文本文件中的每行的空格或者其它什么分隔符替换成tab符号,如后面引号中的那个长空格。“
”。
word就能替换
然后拷入excel,拍下序列就行了
这个必须给加分 参考技术B 功能说明:将文本文件内容加以排序。
语 法:sort
[-bcdfimMnr][-o<输出文件>][-t<分隔字符>][+<起始栏位>-<结束栏位>][--help][--verison][文件]
补充说明:sort可针对文本文件的内容,以行为单位来排序。
参 数:
-b
忽略每行前面开始出的空格字符。
-c
检查文件是否已经按照顺序排序。
-d
排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
-f
排序时,将小写字母视为大写字母。
-i
排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
-m
将几个排序好的文件进行合并。
-M
将前面3个字母依照月份的缩写进行排序。
-n
依照数值的大小排序。
-o<输出文件>
将排序后的结果存入指定的文件。
-r
以相反的顺序来排序。
-t<分隔字符>
指定排序时所用的栏位分隔字符。
+<起始栏位>-<结束栏位>
以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
--help
显示帮助。
--version
显示版本信息
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
下面通过几个例子来讲述Sort的使用。
用Sort命令对text文件中各行排序后输出其结果。请注意,在原文件的第二、三行上的第一个单词完全相同,该命令将从它们的第二个单词vegetables与fruit的首字符处继续进行比较。
$
cat
text
vegetable
soup
fresh
vegetables
fresh
fruit
lowfat
milk
$
Sort
text
fresh
fruit
fresh
vegetables
lowfat
milk
vegetable
soup
用户可以保存排序后的文件内容,或把排序后的文件内容输出至打印机。下例中用户把排序后的文件内容保存到名为result的文件中。
$
Sort
text>result
以第2个字段作为排序关键字对文件example的内容进行排序。
$
Sort
+1-2
example
对于file1和file2文件内容反向排序,结果放在outfile中,利用第2个字段的第一个字符作为排序关键字。
$
Sort
-r
-o
outfile
+1.0
-1.1
example
Sort排序常用于在管道中与其他命令连用,组合完成比较复杂的功能,如利用管道将当前工作目录中的文件送给Sort进行排序,排序关键字是第6个至第8个字段。
$
ls
-
l
|
Sort
+5
-
7
$
ps
-e
-o
"
comm
pid
time"|Sort
-d
//按照command的首字母的字母顺序排序
Sort命令也可以对标准输入进行操作。例如,如果您想把几个文件文本行合并,并对合并后的文本行进行排序,您可以首先用命令cat把多个文件合
并,然后用管道操作把合并后的文本行输入给命令Sort,Sort命令将输出这些合并及排序后的文本行。在下面的例子中,文件veglist与文件
fruitlist的文本行经过合并与排序后被保存到文件clist中。
$
cat
veglist
fruitlist
|
Sort
>
clist
linux:如何对文本里的相同行进行去重
1。对相同的行进行去重
2。对连续相同的行才进行去重各位高手回哪个都谢谢
我查了一下,uniq确实可以对相邻的行进行去重,那么对全文中不管相邻与否,都可以去重又给怎么办
追答全文中去重需要先使用sort命令对每行进行排序,排过序后就可以去除任意重复行了,因为排序后它们就成了相邻行。
追问谢谢啦,那你再看看这个问题
http://zhidao.baidu.com/question/520480567?quesup2&oldq=1
他能显示或者去除重复行
以上是关于linux中如何对一个文本内容进行排序呢的主要内容,如果未能解决你的问题,请参考以下文章