У меня есть несколько (много) файлов;каждый очень большой:
file0.txt
file1.txt
file2.txt
Я не хочу объединять их в один файл, потому что результирующий файл будет 10+ Гига.Каждая строка в каждом файле содержит 40-байтовую строку.Строки довольно хорошо упорядочены (около 1:10 шагов - это уменьшение значения вместо увеличения).
Я бы хотел, чтобы строки были упорядочены.(если возможно, на месте?) Это означает, что некоторые строки из конца file0.txt
будут перемещены в начало file1.txt
и наоборот.
Я работаю над Linux и довольно плохо знаком с ним.Я знаю о команде sort
для одного файла, но мне интересно, есть ли способ сортировки по нескольким файлам.Или, может быть, есть способ создать псевдофайл из файлов меньшего размера, который linux будет рассматривать как один файл.
Что я знаю, я могу сделать: я могу отсортировать каждый файл по отдельности и прочитать в file1.txt
, чтобынайти значение, большее, чем наибольшее, в file0.txt
(и аналогично захватить строки с конца file0.txt
), объединить и затем отсортировать ... но это неприятно и предполагает, что никакие значения из file2.txt
не принадлежат file0.txt
(однако в моем случае это маловероятно)
Изменить
Чтобы было ясно, если файлы выглядят так:
f0.txt
DDD
XXX
AAA
f1.txt
BBB
FFF
CCC
f2.txt
EEE
YYY
ZZZ
Я хочу это:
f0.txt
AAA
BBB
CCC
f1.txt
DDD
EEE
FFF
f2.txt
XXX
YYY
ZZZ