sevenzip
v3.0.0
Published
A utility for running sevenzip
Readme
Sevenzip
A utility for running sevenzip from node.
Requirements
- Node.js >= 18.0.0
- The 7z executable must be available on your system
Installation
npm install sevenzipUsage
This library supports both ES Modules (ESM) and CommonJS (CJS).
ES Modules (recommended)
import SevenZip from 'sevenzip';
const sz = new SevenZip();
const files = await sz.getFiles('/path/to/archive.zip');
console.log(files);CommonJS
const SevenZip = require('sevenzip');
const sz = new SevenZip();
const files = await sz.getFiles('/path/to/archive.zip');
console.log(files);Setup
This library assumes that the 7z executable exists in the $PATH environment.
In order to specify the location of 7z, use the constructor or setExecutable:
const sz = new SevenZip('/usr/local/bin/7z');or
const sz = new SevenZip();
sz.setExecutable('/usr/local/bin/7z');API
getFiles(fullPath: string): Promise<FileInfo[]>
Gets a list of files and their attributes from an archive file that sevenzip supports.
const files = await sz.getFiles('/path/to/archive.zip');
console.log(files);getSingleFile(fullPath: string, internalPath: string): Promise<FileInfo>
Gets information about a single file within an archive.
const file = await sz.getSingleFile('/path/to/archive.zip', 'folder/file.txt');
console.log(file);extractFile(fullPath: string, internalPath: string): Readable
Extracts a file from an archive and returns a readable stream.
const stream = sz.extractFile('/path/to/archive.zip', 'folder/file.txt');
stream.pipe(process.stdout);TypeScript
This package includes TypeScript definitions out of the box.
import SevenZip from 'sevenzip';
const sz = new SevenZip();
const files = await sz.getFiles('/path/to/archive.zip');