Робота з архівами

Матеріал з Wiki TNEU
Перейти до: навігація, пошук

Робота з архівами у Linux. Утиліта TAR. Основні типи архівів. Створення, зміна, розпакування архівів. Робота з великою кількістю файлів і архівів одночасно. Масове перейменування файлів.

УТИЛІТИ TAR

Tar - стандартий і найпопулярніший засіб для архівування / розпакування даних в Linux. Основні опції tar.

v - Докладний висновок інформації і роботі.

f - Ця опція дозволяє записувати у файл. Тобто її потрібно вказувати завжди як при створенні нового архіву, так і при розпакуванні.

c - Створення нового архіву. Використовується разом з опцією f.

A - Додати файли до архіву. Увага: стислі архіви (bzip2 або gzip) не можна змінити! Оновити / додати файли можна тільки в ті архіви, які створені без стиснення, тобто наприклад так tar cf архів.tar назва_пакунка

r - Додати файли в кінець архіву.

d - Показати відмінності між архівами.

t - Вивести список файлів у архіві.

u - Додати в архів тільки ті файли, що новіше вже існуючих в архіві.

x - Видобути файли з архіву. Разом з цією опцією треба вказувати тип архіву.

j - Вказує тип архіву bzip2.

z - Вказує тип архіву gzip.

k - Не перезаписувати існуючі файли.

- Keep-newer-files Не перезаписувати існуючі файли, які новіше, ніж файли в архіві.

- Remove-files Видалити файли, після додавання їх в архів.

w - Інтерактивний режим, в якому tar буде запрошувати підтвердження на кожну дію.

X назва_пакунка - Не додавати в архів файли, список яких вказаний у файлі "ім'я-файла".

$ tar -tf primer.tar.gz - Перегляд вмісту архіву;

$ tar cf primer.tar / home / primer.txt - Створити tar-архів з ім'ям primer.tar містить / home / primer.txt;

$ tar czf primer.tar.gz / home / primer.txt - Створити tar-архів з стисненням Gzip на ім'я primer.tar.gz;

$ tar cjf primer.tar.bz2 / home / primer.txt - Створити tar-архів з стисненням Bzip2 на ім'я primer.tar.bz;

$ tar xf primer.tar - Розпакувати архів primer.tar в поточну папку;

$ tar xzf primer.tar.gz - Розпакувати tar-архів з Gzip;

$ tar xjf primer.tar.bz - Розпакувати tar-архів з Bzip2.


Масове перейменування файлів в Linux Взагалі, намагайтеся не використовувати прогалини у іменах файлів. Наступна конструкція перейменовує всі файли в поточному каталозі, замінюючи прогалини на символи підкреслення «_»:

$ Find. -type f | while read i; do mv "$ i" "$ (echo" $ i "| tr ' ' _)"; done

Досвід використання масового перейменування файлів із заміною пробілів на символи підкреслення:

$ Ls -1

1 odun.djvu

2 dva.djvu

3 tru, choturu, = sim.djvu

r shi.djvu

$ Find. -type f | while read i; do mv "$ i" "$ (echo" $ i "| tr ' ' _)"; done

$ Ls -1

1_odun.djvu

2_dva.djvu

3_tru, _choturu, =sim.djvu

r_shi.djvu

Наведена конструкція замінить прогалини на символи підкреслення в іменах файлів не тільки поточного але і всіх вкладених каталогів. Якщо вам потрібно перейменувати файли тільки в поточному каталозі, додайте опцію-maxdepth 1: $ Find. -maxdepth 1-type f | while read i; do mv "$ i" "$ (echo" $ i "| tr _)"; done

Особисті інструменти
Простори назв

Варіанти
Дії
Навігація
Інструменти