sort 对文件排序的工具
首先,大家如果看到有什么不懂的地方,欢迎吐槽!!!
我会在当天或者第二天及时回复,并且改进~~
sort将输入文件看做由多条记录组成的数据流,而记录由可变宽的字段组成,以换行符作为定界符
sort [option] file
sort命令选项及其意义
-c #测试文件是否已经被排序
-k #指定排序的域
-m #合并两个已排序的文件
-n #根据数字大小进行排序
-o [输出文件] #将输出写到指定的文件,相当于将输出重定向到指定文件
-r #将排序结果逆向显示
-t #改变域分隔符
-u #去除结果中的重复行
sort命令示例:
使用域分隔符:对test文件进行排序
sort -t: test
按第3域对test文件进行排序
sort -t: -k3 test
按第3域对test文件进行排序,价格从小到大
sort -t: -k3n test
按第3域对test文件进行排序,价格从大到小
sort -t: -k3nr test
将test文件中重复的行去掉
sort -t: -u test
cat test | sort | uniq
将排序后的内容不输出到屏幕,直接保存于文件中
sort -t: -k3n -o xx test
sort -t: -k3n test > xx
检测文件是否已经排序好
如果是已经排序好的文件,检测则需要指定sort是如何排序的
sort -c -t: -k3n xx
将111和222两个已经排好序的文件放在一起
sort -m 111 222
sort和awk的联合用法
J Luo
Southeast University
Nanjing,China
Y Zhang
Victory University
Melbourne,Australia
D Hou
Beijing University
Beijing,China
B Liu
Shanghai Jiaotong University
Shanghai,China
C Lin
University of Toronto
Toronto,Canada
将这个替换为下面字符
B Liu
Shanghai Jiaotong University
Shanghai,China
C Lin
University of Toronto
Toronto,Canada
D Hou
Beijing University
Beijing,China
J Luo
Southeast University
Nanjing,China
Y Zhang
Victory University
Melbourne,Australia
awk -v RS="" '{gsub("\n","@");print}' qq | sort | awk -v ORS="\n\n" '{gsub("@","\n");print}'
时间: 2024-10-03 06:53:45