Распакуйте файл, сжатый в .txz и .tar, одной командой
13
У меня есть файл, сжатый в * .txz. После распаковки я получил файл * .tar. Есть ли способ распаковать его дважды одной командой? Я имею в виду распаковать файл (* .tar) .txz одной командой?
Это так же, как с любым сжатым архивом. Вы никогда не должны создавать несжатую копию исходного файла.
Некоторые tarреализации, такие как последние версии GNU, tarимеют встроенные опции для самостоятельного вызова xz.
С GNU tarили bsdtar:
tar Jxvf file.tar.xz
Тем не менее, если у вас есть версия, которая имеет -Jвероятность, она обнаружит xzфайлы автоматически, поэтому:
tar xvf file.tar.xz
будет достаточно.
Если ваш GNU или BSD tarслишком стар для xzконкретной поддержки , вы можете использовать --use-compress-programопцию:
tar --use-compress-program=xz -xvf file.tar.gz
Одним из преимуществ tarвызова утилиты компрессора является то, что она может сообщать о сбое ее в своем состоянии выхода.
Примечание: если tar.xzархив был создан с pixz, pixzвозможно, добавил tarк нему индекс, который позволяет извлекать файлы по отдельности, не распаковывая весь архив:
pixz -x path/to/file/in/archive < file.tar.xz | tar xvf -
Это должен быть путь
tar Jxvf file.txz
источник
tar
можно использовать-J
или--xz
.Распаковка, вероятно, не правильная терминология. Вы можете распаковывать с
xz
и распакуйте сtar
.Страница руководства по GNU
tar
(man tar
GNU tar по умолчанию используется в Debian) указывает, что вы можете использовать:и
xz
поддерживает-d
опцию, так что вы можете использовать:Что гораздо менее ясно страница человека является то , что
-xz
и-J
является сокращением для--use-compress-program xz
или-I xz
.И что вообще не указано на странице руководства, так это то, что вы можете просто сделать
в GNU tar и что он распознает файл tar как сжатый
xz
.источник