如何在node.js中解压缩文件

Alm*_*mad 5 tar node.js

有一些untar库,但我不能让它们工作.

我的想法是这样的

untar(bufferStreamOrFilePath).extractToDirectory("/path", function(err){})
Run Code Online (Sandbox Code Playgroud)

这样的东西可用吗?

Yan*_*hon 15

只是对这个答案的更新,而不是node-tar考虑使用tar-fs哪个产生显着的性能提升,以及更整洁的界面.

var tarFile = 'my-other-tarball.tar';
var target = './my-other-directory';

// extracting a directory
fs.createReadStream(tarFile).pipe(tar.extract(target));
Run Code Online (Sandbox Code Playgroud)


B T*_*B T 5

焦油流模块是一个相当不错的:

var tar = require('tar-stream')    

var extract = tar.extract();
extract.on('entry', function(header, stream, callback) {
    // make directories or files depending on the header here...
    // call callback() when you're done with this entry
});

fs.createReadStream("something.tar").pipe(extract)

extract.on('finish', function() {
    console.log('done!')
});
Run Code Online (Sandbox Code Playgroud)