3 releases (1 stable)
1.0.0 | Aug 15, 2022 |
---|---|
0.1.0 | Apr 10, 2021 |
0.0.1 | Apr 9, 2021 |
#1760 in Database interfaces
24KB
433 lines
sqlar
sqlar - a SQLite Archive utility
An "SQLite Archive" is a file container similar to a ZIP archive or Tarball but based on an SQLite database.
See the SQLite Archive Files documentation for all information.
This library allows to list archive contents, extract files from archives or create a new
archive.
It's main usage is throug the command line utility sqlar
.
Installation
The command line utility sqlar
can be installed through cargo
:
cargo install sqlar
Usage
List the content of an archive
sqlar l path/to/file.sqlar
Extract an archive
sqlar x path/to/file.sqlar path/to/dest/
Create an archive
sqlar c path/to/new-archive.sqlar path/to/source/
Example
The library can also be used progamatically.
List files in an archive
use sqlar::with_each_entry;
with_each_entry("path/to/archive.sqlar", false, |entry| {
println!("File: {}, file type: {:?}, mode: {}", entry.name, entry.filetype, entry.mode);
Ok(())
});
Create an archive
use sqlar::create;
create("path/to/new-archive.sqlar", &["path/to/source"]);
Extract all files from an archive
use sqlar::extract;
extract("path/to/archive.sqlar", "path/to/dest");
License
MIT. See LICENSE.
Dependencies
~28–37MB
~600K SLoC