我正在尝试使用这个命令:
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
。