Как разбить большой файл + 4 ГБ на более мелкие файлы размером около 500 МБ каждый.
И как мне снова собрать их, чтобы получить оригинальный файл?
command-line
split
Стефан
источник
источник
Ответы:
Вы можете использовать сплит и кот .
Например что-то вроде
(где входное имя файла
foo
и последний аргумент - выходной префикс). Это создаст файлы какfoo.000 foo.001
...Та же команда с короткими опциями:
Вы также можете указать «--line-bytes», если хотите разделить границы строк, а не просто точное количество байтов.
Для повторной сборки сгенерированных частей вы можете использовать, например:
(при условии, что оболочка сортирует результаты подстановки оболочки - и количество частей не превышает системно-зависимый предел аргументов)
Вы можете сравнить результат через:
(который должен вывести 0)
Кроме того, вы можете использовать комбинацию find / sort / xargs для повторной сборки частей:
источник
man split cat md5sum
cat foo.{000..NNN}
гдеNNN
последний ожидаемый кусок. Таким образом, вы получите сообщение об ошибке, если одна из частей отсутствует. Но обратите внимание, что-d
для получения числовых суффиксов характерно разделение GNU; на других платформах вы должны сделать сfoo.aaa
,foo.aab
и т.д.split
, KB = 1000, K = 1024, MB = 1000 * 1000, M = 1024 * 1024 и т. Д.... cat > foo_3
быть... cat >>foo_3
?rar
и7zip
часто используются для облегчения сборки таких кроссплатформенныхВы также можете сделать это с Archive Manager, если вы предпочитаете графический интерфейс. Посмотрите под 'Сохранить-> Другие параметры-> Разделить на тома'.
источник