Розбити архів (файл) начастини - IT AverLab

Якщо ви не чули про команду split, ви багато втратили. Як можна зрозуміти з її назви, ця команда допоможе вам розділити файл на кілька менших файлів. split працює з будь-якими файлами як текстовими, так і бінарними. Це дуже корисно, якщо ваш файл не міститься на флешку, або вам потрібно відправити великий файл електронною поштою. Ви також можете розділяти великі текстові файли, такі як логи, на кілька частин заданого розміру. У цій статті описано синтакіс та застосування команди split.
2. Часті опції
-b, --bytes=SIZEЦя опція задає розмір файлів, що виводяться.-d, --numeric-suffixesвикористовувати цифрові суфікси замість алфавітних-n, --number=CHUNKSзадає кількість файлів, що виводяться.
3. Розрізання файлу на частини заданого розміру
Якщо не використовується опція suffix, за замовчуванням команда split буде розділяти файли на частини, назва яких буде починатися з x, за яким слідуватимуть ще два символи в алфавітному порядку. Наприклад, перший файл називатиметься xaa, за яким йтиме xab, xac, а останній файл називатиметься xzz. Це означає, що в даному випадку ви можете розбити свій файл не більше, ніж на 676 частин (26x26). Візьмемо для прикладу файл розміром 10 Мб:
Тепер ми можемо розбити файл на частини розміром 1 Мб за допомогою опції -b:
4. Розрізання файлу на задану кількість частин
Також може виникнути ситуація, коли нам потрібно розбити файл на певну кількість елементів. У наведеному прикладі ми розрізаємо наш файл розміром 10 Мб на максимум три частини за допомогою опції -n:
5. Використання числових суфіксів
Команда split дозволяє створюватифайли із числовими суфіксами замість символьних. Нижче наведена команда створює файл для кожного символу в рядку "linuxcareer.com". Секрет полягає в тому, що ми розрізаємо файл, задаючи розмір частини в байтах, а 1 байт еквівалентний 1 символу. Також замість символьних ми використовуємо числові суфікси:
6. Відновлення вихідного файлу
Розрізати файл легко, але як його зібрати назад? Допустимо, у нас є якийсь ISO-образ, і ми хочемо розділити його навпіл.
Тепер ми розрізаємо образ навпіл за допомогою опції -n:
Ми можемо відновити вихідний файл ubuntu-12.04.1-server-amd64.iso, використовуючи команду cat та оператор перенаправлення STDOUT:
Щоб переконатися, що файл restored-ubuntu-12.04.1-server-amd64.iso відновлено коректно і є точною копією оригінального файлу ubuntu-12.04.1-server-amd64.iso, ми використовуємо команду md5sum для створення контрольної суми обох файлів:
Як можна бачити, відновлений файл є точною копією вихідного, оскільки їх контрольні суми збігаються.
7. Розрізання архівів tar на лету
Тепер, коли ми ознайомилися з основами, розглянемо складніший приклад. У наведеному нижче прикладі ми архівуємо директорію /tmp/Software. Однак, замість створення архіву ми розріжемо його на льоту за допомогою команди split.
Як ви можете бачити, наш архів диреторії /tmp/Software розрізаний на частини із максимальним розміром 2 Мб. Далі ми відновимо вихідну директорію:
Як ви можете бачити, при використанні операційної системи GNU/Linux ви обмежені лише своєю уявою та навичками, а не розміром вашого гаманця. У цій статті описано лише основи роботи з командою split. Дізнатись більше ви можете за допомогою команди: