Відмінності між версіями «Bzip2»
Alina (обговорення • внесок) |
Alina (обговорення • внесок) |
||
Рядок 6: | Рядок 6: | ||
'''Ефективність''' | '''Ефективність''' | ||
− | Відповідно до традицій UNIX-програмування, bzip2 виконує тільки одну функцію: стиснення і розпаковування одного файлу. При цьому до назви файлу за умовчанням додається розширення .bz2. Для упаковки декількох файлів їх зазвичай спершу архівують в один файл утилітою tar, і потім вже стискають за допомогою bzip2. Такі архіви зазвичай мають розширення .tar.bz2. | + | Відповідно до традицій UNIX-програмування,''' bzip2''' виконує тільки одну функцію: стиснення і розпаковування одного файлу. При цьому до назви файлу за умовчанням додається розширення .bz2. Для упаковки декількох файлів їх зазвичай спершу архівують в один файл утилітою tar, і потім вже стискають за допомогою bzip2. Такі архіви зазвичай мають розширення .tar.bz2. |
'''bzip2''' стискає більшість файлів ефективніше, але повільніше, ніж більш традиційні gzip або zip. В цьому відношенні він схожий на інші сучасні алгоритми стиснення. | '''bzip2''' стискає більшість файлів ефективніше, але повільніше, ніж більш традиційні gzip або zip. В цьому відношенні він схожий на інші сучасні алгоритми стиснення. |
Версія за 10:47, 19 квітня 2012
bzip2— безкоштовна вільна утиліта командної строки(а також алгоритм) з відкритим початковим кодом для стиснення даних.
Розроблена і вперше опублікована Джуліаном Сьюардом (англ. Julian Seward) в липні 1996 (версія 0.15). Стабільність і популярність компресора росли протягом кількох років, і версія 1.0 була опублікована в кінці 2000 року.
Ефективність
Відповідно до традицій UNIX-програмування, bzip2 виконує тільки одну функцію: стиснення і розпаковування одного файлу. При цьому до назви файлу за умовчанням додається розширення .bz2. Для упаковки декількох файлів їх зазвичай спершу архівують в один файл утилітою tar, і потім вже стискають за допомогою bzip2. Такі архіви зазвичай мають розширення .tar.bz2.
bzip2 стискає більшість файлів ефективніше, але повільніше, ніж більш традиційні gzip або zip. В цьому відношенні він схожий на інші сучасні алгоритми стиснення.
В деяких випадках bzip2 програє архіваторам 7-Zip (LZMA) і RAR в абсолютній ефективності стиснення. Згідно з автором, bzip2 програє від 10 до 15 відсотків найкращому класу алгоритмів стиснення даних, відомих в цей час (PPM), але при цьому в два рази швидший при стисненні і в 6 разів швидший при розпаковуванні.
bzip2 використовує перетворення Барроуза-Вілера (англ. Burrows-Wheeler transform, сортування блоків) для перетворення послідовностей символів, що багато разів чергуються, на рядки однакових символів, потім застосовує перетворення MTF (англ. move-to-front), і в кінці кодування Хаффмана. Блоки в bzip2 мають однаковий розмір в нестиненому потоці. Розмір блоку можна вибрати за допомогою аргументу командного рядка, і він позначається в стислому тексті довільно вибраною послідовністю бітів представлення числа Пі.
Використання
bzip2 можна використовувати як в комбінації з tar, так і окремо:
bzip2 file для стиснення ' bzip2 -d file.bz2' для розпаковування.
Аргументи командного рядка bzip2 в основному такі ж, як і у gzip.
розпаковування архіву tar, стисненого bzip2 bzip2 -cd назва архіва.tar.bz2 | tar -xvf - створення стисненого bzip2 архіву tar tar -cvf - файли | bzip2 -9 > назва архіву.tar.bz2
розпаковування tar-рахіва, стисненого bzip2 за допомогою GNU tar tar -xvjf назваархіва.tar.bz2