Quarkonia
Quarkonia

Reputation: 2231

How can I decompress an archive file having .zst or tar.zst?

Suppose I have two files:

How can I decompress these files in terminal?

Upvotes: 205

Views: 474282

Answers (6)

s-yata
s-yata

Reputation: 2650

The extension .zst means that the archive is compressed by zstd.

The tar command has an option -I (--use-compress-program) to specify a command for compression/decompression.

You can use it as follows.

$ tar --use-compress-program=unzstd -xvf archive.tar.zst
$ tar --zstd -xvf archive.tar.zst

Upvotes: 261

Jonathan Lam
Jonathan Lam

Reputation: 1330

Download the Python library and then you can use Python like following:

import zstandard as zstd
dctx = zstd.ZstdDecompressor()
with open(submission_path_read, 'rb') as ifh, open(submission_path_save, 'wb') as ofh:
    dctx.copy_stream(ifh, ofh, write_size=65536)

Upvotes: 5

DKMDebugin
DKMDebugin

Reputation: 651

On macOS Mojave 10.14.3, I was unable to specify the compression algorithm using the -I flag. Doing it this way worked for me;

Install zstd using brew if you don't already have it installed.

  1. Decompress from .zst: unzstd filename.tar.zst or zstd -d filename.tar.zst. filename.tar will be created.
  2. List compressed archive: tar tf filename.tar.
  3. Extract the compressed archive: tar xf filename.tar.

Hope this helps.

Upvotes: 17

phrodod
phrodod

Reputation: 166

I found some of these files in the Anaconda downloads. After I installed Anaconda, I was downloading additional packages. The downloaded packages in my Anaconda download directory were zip files (without the .zip extension), but they had these .tar.zst files inside them. That led me to stackoverflow to figure out what they were, which led me to this question. If you're in the same boat, then Anaconda also supplies the answer.

It turns out that the zstd and unzstd executables are also installed by the Anaconda installer, so they should be available at the command line if you're in your Anaconda environment.

Upvotes: 3

schuess
schuess

Reputation: 1049

If you have a standard cmake + gcc build stack:

git clone https://github.com/facebook/zstd.git
cd zstd/build/cmake
cmake .
make
./programs/zstd -d /path/to/file.zst

Upvotes: 25

Kaleba KB Keitshokile
Kaleba KB Keitshokile

Reputation: 1985

Decompress it in Terminal.

unzstd yourfilename.zst

I know there aren't many resources available but I found this here: http://manpages.org/zstd

Upvotes: 164

Related Questions