Відмінності між версіями «Робота з архівами»
Donserg (Обговорення • внесок) м (Захист на Робота з архівами встановлено ([edit=sysop] (безстроково) [move=sysop] (безстроково))) |
Поточна версія на 23:18, 20 вересня 2012
Робота з архівами у 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