Linux 文本处理工具(sort)
sort命令用于对文本行进行排序, 这里介绍下经常使用的场景:
sort filename
对本中的行按自然顺序排序sort -n filename
对行首内容已数值方式排序sort -r filename
对行按自然顺序降序排列
以第N列排序, 示例以第2列按文本自然顺序排序
sort -k 2 myFile
如果第二列有相同内容, -s
选项指定保留原始顺序,不重排序
sort -s -k 2 myFile
将第二列的内容作为数值类型进行排序, 如果内容相同, 保留原始顺序, 不重排序
sort -s -k 2n myFile
更复杂的场景, 将第二列以字符串降序排列,如果第二列相同, 以第三列按数值类型排序
sort -k 2r -k 3n myFile
默认情况下, sort
命令将 空格/Tab 作为列的分隔符, 可以使用 -t
选项指定分隔符, 比如以逗号分隔, 对第二列按数值类型排序:
sort -t ',' -k 2n myFile
参考链接