1

Я пытаюсь использовать эту команду:

type *.dump > total

для того, чтобы объединить мои файлы .dump в общий.

Однако нумерация конкатенации неверна. Например, файлы в следующем порядке:

cascade1.dump cascade10.dump каскад 11.dump

в отличие от 1, 2, 3 и т. д.

Может кто-нибудь помочь мне разобраться с нумерацией?

2 ответа2

4

Это должно работать:

ls -rt *.dump | xargs cat > total

Он упорядочивает файлы * .dump по time до объединения.

2

У sort GNU есть способ сделать естественную сортировку, называемую 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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .