Какую команду мне нужно распаковать /извлечь файл .tar.gz?
Я получил огромный файл .tar.gz от клиента, который содержит около 800 мб файлов изображений (при несжатом виде). FTP-сервер нашей хостинговой компании серьезно медленный, поэтому извлечение всех файлов локально и отправка их через ftp isn ' практический. Мне удалось загрузить файл .tar.gz на наш хостинг-сайт, но когда я ssh в мой каталог и попробую использовать unzip, он дает мне эту ошибку:
[[email protected] locations]$ unzip community_images.tar.gz
Archive: community_images.tar.gz
End-of-central-directory signature not found. Either this file is not a zipfile, or it constitutes one disk of a multi-part archive. In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive.
note: community_images.tar.gz may be a plain executable, not an archive
unzip: cannot find zipfile directory in one of community_images.tar.gz or community_images.tar.gz.zip, and cannot find community_images.tar.gz.ZIP, period.
Какую команду мне нужно использовать для извлечения всех файлов в файле .tar.gz?
4 ответа
Введите man tar
для получения дополнительной информации, но эта команда должна выполнить трюк:
tar -xvzf community_images.tar.gz
Чтобы немного объяснить, tar собрал все файлы в один пакет, community_images.tar
. Программа gzip применяла сжатие, следовательно, расширение gz. Итак, команда выполняет пару вещей:
-
f
: это должен быть последний флаг команды, а tar f должен сразу после. Он сообщает tar имя и путь сжатого файла. -
z
: говорит tar для распаковки архива с помощью g z ip -
x
: tar может собирать файлы или e x трассировать их.x
делает последний. -
v
: сильно заставляет tar говорить. V Выход erbose показывает все файлы, которые были извлечены.
Если вы хотите, чтобы файлы были извлечены в конкретный пункт назначения, вы можете добавить -C /destination/path/
Прежде всего убедитесь, что вы создаете каталог: ~ /Pictures /Community
Пример:
mkdir ~/Pictures/Community
tar xf community_images.tar.gz -C /home/emmys/Pictures/Community/
Вы можете легко запомнить его, если вы считаете, что tar использовать X тракт a F ile
Примечание: Помните, что вы можете искать внутри man-страниц с помощью ?
+ term для поиска, а затем n
и N
, чтобы перейти к следующему или предыдущему экземпляру термина, который вы ищете.
В какой-то момент tar
был обновлен до автоматического распаковки. Теперь вам нужно только:
tar xf community_images.tar.gz
То же самое объясняется:
-
f
: это должен быть последний флаг команды, а tar f должен сразу после. Он сообщает tar имя и путь сжатого файла. -
x
: e x трассировать файлы.
Обратите внимание на отсутствие дефиса для флажков команд. Это связано с тем, что большинство версий tar позволяют использовать опции стиля gnu и bsd (упрощенно, gnu требует дефиса, bsd - нет).
Если вы не можете извлечь файл .tar.gz
, используя
tar -xvzf fileName.tar.gz
Попробуйте извлечь с помощью
tar xf fileName.tar.gz