Linux: Як розбити великий файл на менші файли?


10

У мене на гігантському файлі сидить гігантський файл (> 20 концертів), і мені потрібно перенести його на свою цільову машину. Для цілей цього питання припустимо, що у мене немає мережевого зв’язку між двома машинами.

Мені потрібно розбити цей файл на ряд менших файлів, записати менші файли на DVD (и), а потім знову зібрати все на цільовій машині.

І вихідні, і цільові машини є ящиками для Linux. Чи є спосіб досягти цього за допомогою tar? У мене є відчуття, що мені потрібно використовувати --multi-volumeпараметр. Які мої варіанти?

Мені потрібно мати можливість вказати розмір файлів томів, щоб переконатися, що кожен з них вміститься на одному DVD.

Дякую!

Відповіді:


14

Використовуйте команду split.

split -b 22 m newfile.txt new розділив би файл "newfile.txt" на три окремі файли під назвою newaa, newab та newac, кожен файл розміром 22 Мб.


3
Будьте уважні до створення префіксу "new", яким ви поділитесь з оригінальним файлом "newfile.txt". Тепер, коли ви намагаєтеся це зробити, cat new* > newfile.txtце підірветься!
Роберт Мартін

@RobertMartin Хороший улов!
duffbeer703

6

Інші відповіді охоплюють їх splitдля об'єднання в один головний файл, який ви просто використовуєте cat.



0

розділити -b 4000000000 ім'я файлу

Він створить кожен файл розміром 4 Гб

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.