Tar — один из наиболее распространённых архиваторов в Linux системах. Но tar не сжимает файлы в архиве. Tar всего лишь упаковывает файлы в архив без компрессии. Для сжатия tar умеет работать в паре с bzip2 или gzip. В статье приведено описание способов применения tar.
Создать архив из папки
Чтобы создать архив tar с gzip сжатием, введите следующую команду:
Разберём пример по частям. Команда tar запускается с ключами:
z — Архивирует с gzip компрессией. Чтобы использовать bzip2, надо заменить ключ » z » на » j «.
c — Создаёт архив. Без этого ключа архив не создастся.
f — Без этого ключа архив не создастся. Как гласит документация: «без ключа f tar будет выдавать результат на stdout при упаковке и пытаться читать архив с stdin при распаковке»
После ключей указывается путь к файлу создаваемого архива с его названием: /root/files.tar.gz . Если указать относительный путь, то файл создастся в той папке, где открыт терминал.
Linux — Компиляция программ из исходников в Ubuntu
В самом конце команды передаётся директория, которую надо архивировать /home/folder/ . В примере стоит абсолютный путь к этой папке. В таком случае в архиве tar будет находится все родительские папки т.е. при открытии архива там будет папка /home/ и внутри неё папка /folder/ . Но если абсолютный путь заменить относительным, то будет только /folder/ .
Разархивировать
Чтобы распаковать архив, перейдите в папку с ним и введите:
Файлы будут распакованы в ту же папку, где находится архив.
Ключ x указывает на распаковку архива. Ключ f обязателен, как и при создании архива.
Если требуется распакавать архив в определённую папку, то путь к ней можно указать после ключа C :
Исключить папки из архива
Иногда возникает задача в исключении некоторых подпапок из архива. К примеру, если надо создать архив из папки /home/, но в него не должны попасть содержания папок /cache/ и /trash/ . Тогда необходимо использовать ключ exclude:
В конце значений explude, у папок, нет слеша «/». Если слеша не будет, то удалится не содержимое папки, а вся папка.
Звёздочки в названии папок стоят, чтобы не указывать полный путь к папкам. При выполнении такой команды в архив не попадут файлы из папок:
- /home/ cache /
- /home/folder/ cache /
- /home/folder/subfolder/ cache /
Если задать exclude без звёздочек, то необходимо прописывать полный путь к папке, которую надо исключить.
Обратите внимание на то, что в записи нет пробелов! Если поставить пробел до/после запятой или до/после фигурной скобки, то исключение не сработает. Т.е. команда с не даст желаемого результата из-за пробела после запятой.
Публикации из этого раздела:
- BASH. (Пере) подключение к WIFI — Мой небольшой нетбук на Linux работает 24/7. Он выполняет сразу несколько периодических скриптов. Та.
- Резервные копии из папок. Хранение бэкапов — Часто простые домашние пользователи хранят данные на единственном диске, в одном экземпляре. Это нео.
- AJAX загрузка файлов — С каждым годом сайты становятся всё интерактивнее. Теперь для отправки формы не надо перезагружать с.
- PHP обрезать строку — substr — Обрезка строки — одна из самых востребованных функций в PHP. К сожалению, постоянно забываю её. Поэт.
- POST запрос в PHP — Если на сервере не установлена библиотека cURL, то можно воспользоваться функцией file_get_contents(.
- Процент загрузки файла через AJAX — В предыдущей статье «AJAX загрузка файлов» рассказывал как можно сделать загрузку файла через JQuery.
- MySQL запрос WordPress. Получить все публикации — WordPress — это популярный движок для создания блогов. К сожалению, его api мне плохо знаком — работ.
- Bitrix загрузить файл в свойство через форму — Загрузка файла на сайт — это довольно рядовой процесс. Но как загрузить пользовательский файл в свой.