|
29.03.2008, 12:54 Вверх | #1 | |||
Коварный тип
|
Разрезка больших файлов на части с последующей сборкой [FAQ]
Разрезка больших файлов на части с последующей сборкой
Многие начинающие пользователи Linux сталкиваются с проблемой разрезания больших файлов и дальнейшего их склеивания... Наиболее частые примеры: Например надо слить 4-х гиговый iso-шник у друга, а под рукой нет чистых болванок, зато есть две флэшки по 2Гб каждая; или нет DVD-болванок, а есть только CD, надо залить что то на обменник только 100Mb просящий... Ну и как разрезать файл, чтобы потом легко его собрать?!? Ответ таков: man split и man cat Итак, о команде split, которая позволяет разделить файл на части… split - делит входной файл на части согласно указанным опциям, и именует части файла префиксом и окончанием в порядке возрастания (например файл input по умолчанию может быть разделена на части с префиксом x и окончанием -aa, -ab, -ae: т.е из файла одного размера получим его части названные xaa, xab, xae и т.п.) Код:
split [option] [input [prefix]] -a, –suffix-length=N (длина окончания префикса по умолчанию равна 2) -b, –bytes=SIZE (размер выводимого файла, можно указать окончание для байт - b, для килобайт - k, для мегабайт - m) -d, –numeric-suffixes (использовать цифровое окончание вместо буквенного) input - имя файла prefix - префикс для созданных частей, по умолчанию имеет значение x, т.е. части разделенного файла будут назваться xaa, xab, xae и т.п. Обратите внимание: В последних версиях split появилась возможность завершать префикс не буквами -aa, -ab, -ae, а цифрами, для этого необходимо указать опцию -d, тогда окончания у частей файла будут -00, -01, -02. Кроме того можно указать размер длины окончания, по умолчанию он равен 2, но если вам нужно разделить файл менее чем на 10 частей, достаточно указать опцию -a N, где N, например, равен 1, тогда вы получите файлы x0, x1, x3 … x9 Наглядный пример: У нас есть файл clips.iso размером 1,7 Гб и под рукой оказались две флешки по 1Gb каждая, для того чтобы разделить файл на две части дадим команду: Код:
$ split -b 940m clips.iso это разделит файл clips.iso на две части: xaa 940 Мб xab 851Mb Можно забросить на флешки, но наверняка xaa и xab немного неудобные, или непонятные названия, так давайте это поправим, используем опции -a, -d и укажем префикс в виде “clips.part”: Код:
$ split -a 1 -d -b 940m clips.iso clips.part В итоге получим: сlips.part0 940 Мб сlips.part1 851Mb Совет: Привыкайте называть части файла понятными и удобными вами префиксами, чтобы потом не потеряться в куче болванок с непонятными файлами называющимися xaa, xab и т.п... Порубали файл, залили на флешки, принесли домой. Как склеить??? cat - команда объединяющая файлы и направляющая их на стандартный вывод. В нашем случае достаточно скопировать две части файла в одну директорию и дать команду: Код:
$ cat clips.part* > сlips.iso эта команда по порядку (сlips.part0 затем сlips.part1) соеденит части в один файл сlips.iso благодаря указанию * даже если бы частей было больше, эта команда все равно бы по порядку “склеила” их в единый файл в порядке возрастания окончания (-aa, -ab, -ae или -00, -01, -02 или -0, -1, -2) Если вам вдруг понадобилось соединять файлы в другом порядке (мало ли), достаточно перечислить их через пробел: Код:
$ cat file1 file2 file3 > outputfile А вот еще пример: Есть регулярно пользуемый образ DVD с данными: - baze.iso Порубим его на куски, для резервирования на CD... Код:
split -a 1 -d -b 680m baze.iso bazerezerv.part В итоге получаем: Можно нарезать на CD, и спрятать на всякий случай подальше... Автор не известен. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[Вопрос] Как активировать некоторые части сайта | surikana | Joomla! | 2 | 19.08.2011 15:56 |
[Вопрос] нужно организовать раздачу на вобле 3,8,5 больших файлов | donavi | vBulletin 3.х | 1 | 10.02.2011 19:53 |
ЗАвершение 1 части турнира Point Blank - Cyber Series | swat_^^ | PointBlank | 2 | 23.06.2010 14:46 |
MP3 плеер на лицевой части форума! | vlad masters | vBulletin 3.х | 2 | 25.03.2009 17:01 |