按类型顺序连接文件

按类型顺序连接文件

我正在尝试使用这个命令:

type *.dump > total

为了将我的.dump 文件连接成总数。

但是,连接的编号是错误的。例如,文件的顺序如下:

级联1.转储 级联10.转储 级联11.转储

与 1、2、3 等相反。

有人能帮我算出编号吗?

答案1

GNUsort有办法自然排序version sorting其例子如下:

-V, --version-sort          natural sort of (version) numbers within text

因此您可以执行以下操作:

$ ls foo*
foo0  foo1  foo10  foo11  foo12  foo13  foo14  
foo15  foo2  foo3  foo4  foo5  foo6  foo7  foo8  foo9

$ ls foo* | sort -V
foo0
foo1
foo2
foo3
foo4
foo5
foo6
foo7
foo8
foo9
foo10
foo11
foo12
foo13
foo14
foo15

$ ls foo* | sort -V | xargs cat > total

答案2

这应该有效:

ls -rt *.dump | xargs cat > total

它在连接之前对 *.dump 文件进行排序time

相关内容