| 关键词: sort 排序 banana vegetables nbsp orange 命令 apple 文档 fruits |
例如,假如 fruits 文档包含文本: banana orange Persimmon apple %%banana apple ORANGE LANG=En_US sort fruits 显示: %%banana ORANGE Persimmon apple apple banana orange sort -d fruits 此命令序列排序和显示 fruits 文档的内容,并且只比较字母、数字和空格。 假如 fruits 文档和示例 1 相同,那么 sort 命令显示: ORANGE Persimmon apple apple %%banana banana orange -d 标志忽略 %(百分号)字符,因为他不是个字母、数字或空格。(即 %%banana 被 banana 取代)。 sort -d -f fruits -d 标志忽略特别字符,-f 标志忽略大小写差异。 将 LC_ALL、LC_COLLATE 或 LANG 环境变量配置为 C 的情况下,fruits 文档的输出结果变为: apple apple %%banana banana ORANGE orange Persimmon sort -d -f -u fruits -u 标志告诉 sort 命令除去重复的行,使文档中的每一行唯一。此命令序列显示: apple %%banana ORANGE Persimmon 不但除去重复的 apple,而且也除去了 banana 和 ORANGE。 除去这些是因为 -d 标志忽略 %% 这个特别字符,-f 标志忽略大小写差异。 分隔符-t: +1 sort忽略第一字段,从第二字段开始比较 例如vegetables 包含: yams:104 turnips:8 potatoes:15 carrots:104 green beans:32 radishes:5 lettuce:15 sort -t: +1 vegetables carrots:104 yams:104 lettuce:15 potatoes:15 green beans:32 radishes:5 turnips:8 sort -t: +1 -n vegetables 此命令序列按照第二个字段对 vegetables 文档进行数字排序。 假如 vegetables 文档和示例 6 中的相同,那么 sort 命令将显示: radishes:5 turnips:8 lettuce:15 potatoes:15 green beans:32 carrots:104 yams:104 sort -t: +1 -2 -n +0 -1 -r vegetables 或 sort -t: -k2,2 n -k1,1 r vegetables 此命令序列对第二字段(+1 -2 -n)进行数字排序。在这个顺序中,他以逆字母顺序(+0 -1 -r)对第一字段排序。 将 LC_ALL、LC_COLLATE 或 LANG 环境变量配置为 C 的情况下,输出将类似于: radishes:5 turnips:8 potatoes:15 lettuce:15 green beans:32 yams:104 carrots:104 此命令按数字顺序对行排序。当两行数字相同时,他们以逆字母顺序出现。 要使用排序的文本替换原始文档,请输入: sort -o vegetables vegetables 对于file1和file2文件内容反向排序,结果放在outfile中,利用第2个字段的第一个字符作为排序关键字。 $ sort -r -o outfile +1.0 -1.1 example sort排序常用于在管道中与其他命令连用,组合完成比较复杂的功能,如利用管道将当前工作目录中的文件送给sort进行排序,排序关键字是第6个至第8个字段。 $ ls - l | sort +5 - 7 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|