【问题标题】:Linux, How to sort the lines of a fileLinux,如何对文件的行进行排序
【发布时间】:2013-01-18 04:21:17
【问题描述】:

我有一个名为abc 的文件。 abc的内容是:

ccc
abc
ccc
ccc
a
b
dd
ccc

我想对文件的行进行排序并删除所有重复项(在这种情况下 ccc 是重复项)。

在 shell 脚本中我使用这个:

sort -u < $1

但是排序后的结果变成了标准输出,而不是保存到 abc 文件中。我该怎么做?

【问题讨论】:

    标签: linux file sorting


    【解决方案1】:

    您可以将输出重定向到文件

    sort -u < $1 > abc
    

    【讨论】:

    • 在这种情况下,您必须创建临时排序文件并将其重命名为abc
    【解决方案2】:

    试试

    sort -u abc -o abc_sorted
    

    或者如果你想替换文件

    sort -u abc -o abc
    

    你也可以

    sort abc | uniq > abc_sorted
    

    【讨论】:

      【解决方案3】:

      您可以简单地使用命令sortuniq|(管道)和&gt;(重定向)来完成。如果您的文件名是file,您可以通过以下命令简单地完成:-

      sort file | uniq >file
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-03
        • 2018-09-10
        • 1970-01-01
        • 2021-09-01
        相关资源
        最近更新 更多