Как распаковать архив tar gz в определенное место?

97

Я хочу распаковать .tar.gzфайл в определенную директорию.

Архивный файл находится в /root/Documents. Я хочу распаковать его в /root/Desktop/folder. Структура папок в заархивированном файле должна быть сохранена в целевом каталоге.

alwbtc
источник

Ответы:

159

У вас есть два варианта:

cd /root/Desktop/folder
tar xf /root/Documents/file.tar.gz

или же

tar xf file.tar.gz -C /root/Desktop/folder
Патчи
источник
спасибо как насчет gzip -dc archive.tar.gz | tar -xf - -C /destination?
alwbtc
что -Cозначает?
Алик Эльзин-килака
2
@ AlikElzin-kilaka From man tar-C, --Directory DIR перейти в каталог DIR
tachomi
2
tar -xvjf foo.tar.bz2для тех кто ищет bz2 как я
vladkras
На самом деле вам больше не нужно указывать формат сжатия с помощью современного tar. Я отредактировал ответ, чтобы он работал с bz2, xz и всем остальным, что вы хотите в него добавить.
патчи