У меня есть большой файл (8 ГБ, например). Как я могу разделить его на несколько частей, скажем, 3 равных части, и после этого как я интегрирую их позже?
Существует несколько способов выполнить это. Давайте запустимся с основных.
Позволяет говорит, что у меня есть изображение и его слишком большое (10 МБ). Все, что я делаю:
split --bytes=1M /path/to/image/image.jpg /path/to/image/prefixForNewImagePieces
и затем соединять его я использую кошку:
cat prefixFiles* > newimage.jpg
Например:
Принятие в папке, где изображение:
split --bytes=1M myimage.jpg new
если изображение в каталоге, названном изображениями, можно также сделать это:
split --bytes=1M images/myimage.jpg new
Если изображение в каталоге,/home/cyrex/images, можно сделать это:
split --bytes=1M /home/cyrex/images/myimage.jpg new
(Во всех случаях выше его разделит myimage.jpg
в частях 1 МБ и префиксе название частей с новым словом. Таким образом, они были бы похожи newaa
, newab
, newac
, newad
...)
Если Вы разделяете Текстовый файл и хотите разделить его строками, можно сделать это:
split -l 1000 book.txt new
Который разделит текстовый файл в выходных файлах 1 000 строк каждый. Это - другой способ разделить файл и главным образом используется для текстовых файлов как журналы, sql дампы, файлы CSV, и т.д.
Затем я объединяю их
cat new* > newimage.jpg
Это - один путь. Можно даже изменить размер splitted частей. Просто измените часть, которая говорит --bytes=1M
кому: --bytes=1K
для 1 килобайта или 1G для giga или другое число как --bytes=4K
для частей 4 КБ.
Иначе опция сжатия в gui Наутилуса. Это дает Вам опцию разделить файл или файлы, которые Вы хотите сжать в меньшие размеры мегабайта. Его простое и легкое.
Принятию Вас назвали ISO-образ ubuntu.iso
Вы могли сделать это:
7z a -v5m -mx0 ubuntu.7z ubuntu.iso
Это создаст файлы 5 МБ размером из ubuntu.iso
. -v5m
размер тома, таким образом, можно изменить его на 10, 12, 1, 3, и также m может быть изменен на k для килобайтов и т.д.; -mx0
переключатель говорит С 7 zip не использовать сжатие, то есть, только разделять данные на части.
Для извлечения просто делают
7z x ubuntu.7z.001
этим путем Вы извлекаете первый файл, и 7z начинает извлекать из следующих файлов в порядке. Можно также сделать
7z e ubuntu.7z.001
который имеет тот же эффект здесь.
Используя split -b
с соответствующим числом можно получить три части.
Число могло быть:
size=$(wc -c <"file name")
one_third=$((size/3+1))
Для повторной сборки используйте кошку
cat "file name"* > "file name"
Страницы руководства помогут заполнить детали.
Популярная бесплатно распространяемая программа должна разделить и повторно объединить файлы. Программа доступна в Windows, Linux и множестве других платформ.
HJSplit для Linux является бесплатно распространяемым разделителем файла для Linux с полным графическим интерфейсом пользователя. HJSplit поддерживает размеры файла более чем 100 гигабайтов, Разделение, Соединение/Переобъединение, контрольные суммы MD5, файл - выдерживает сравнение, "выполненный без установки" и программы является полностью портативным.
HJSplit для Linux не должен быть установлен, и он не зависит ни от каких специальных библиотек. Просто извлеките архив hjsplitlx.tar.gz в каталог по Вашему выбору и запустите программу из файлового менеджера Linux или окна терминала. Вы, возможно, должны были бы скорректировать полномочия файла программы к 'исполняемому файлу'.
Gnome разделяется? http://gnome-split.org/
Разделение GNOME является инструментом, который позволяет Вам разделять файлы и объединять их назад. Это записано в Java и использует GTK + пользовательский интерфейс (благодаря проекту гнома Java). Цель состоит в том, чтобы предложить собственную реализацию подобных проектов, которые могут обработать несколько форматов файлов (например, Xtremsplit).
http://www.omgubuntu.co.uk/2010/08/split-large-files-easily-in-ubuntu-with-gnome-split/
HOZ - Hacha Открывают Zource v1.65 - http://hoz.sourceforge.net/
От разработчика:
OZ - то, что Вы назвали бы 'разделителем файла'. Его формат файла совпадает с тем, используемым программным обеспечением 'Hacha', известным разделителем в Испании и Latinamerica. HOZ является открытым исходным кодом и портативной реализацией C 'Hacha' совместимый разделитель.
HOZ меньше и быстрее, чем 'Hacha'.
btw, я использовал 'Z' вместо этого 'S' в 'Zource', потому что 'hoz' является 'серпом' на испанском языке, и так как 'hacha' является испанским словом для 'топора'...
После установки можно использовать GUI Hoz путем отбрасывания ghoz
в терминале. Операция так проста, которому не нужно никакое объяснение, но дополнительная информация может быть достигнута в сайте разработчика.
Удачи!
Свободное разделение файла и утилита слияния разрабатываются в Java. Это - небольшого размера приложение, которое позволяет пользователю разделять любой тип файла в меньших размерах в КБ, МБ или ГБ.
Это доступно для Linux, а также Windows.
WoodCutter предлагает 3 способа объединить назад исходные файлы. WoodCutter создает файл слияния, который может быть обработан приложением WoodCutter для присоединения ко всем файлам назад. В случае, если получателю файлов разделения не установили WoodCutter, затем также исходный файл может быть получен, поскольку WoodCutter также создает пакетный файл и файл Сценария оболочки для слияния файлов назад. Пакетный файл будет использоваться в платформе Windows, и Сценарий оболочки будет использоваться в платформах Linux.
split --number
Это - хороший вариант генерировать файлы N с тем же размером, за исключением последнего, который мог бы быть больше из-за неделимости. Например:
printf '0123456789' > f.txt
split -d --number 2 f.txt f.txt.part.
tail f.txt.part.*
дает:
==> f.txt.part.00 <==
01234
==> f.txt.part.01 <==
56789
и:
split -d --number 3 f.txt f.txt.part.
tail f.txt.part.*
дает:
==> f.txt.part.00 <==
012
==> f.txt.part.01 <==
345
==> f.txt.part.02 <==
6789
По сравнению с -b
+ явное вычисление размера, которое было упомянуто в: https://askubuntu.com/a/54584/52975, последний файл может быть почти 2x больше, чем предыдущие, который иногда является оборотной стороной к этой опции. Это много раз однако более удобно, так как Вы не должны делать вычисления размера сами.
В равном количестве строк спросили: https://stackoverflow.com/questions/2016894/how-to-split-a-large-text-file-into-smaller-files-with-equal-number-of-lines
Протестированный в split
2.28, Ubuntu 18.04.