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

Матеріал з 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 назва_пакунка Не додавати в архів файли, список яких вказаний у файлі "ім'я-файла".

  1. 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

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

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