Skip to content

expurgator is an efficient Rust utility for cleaning and purging unwanted files from archive formats

License

Notifications You must be signed in to change notification settings

attilarepka/expurgator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

expurgator

expurgator is a cli utility for efficiently purging unwanted files from archive formats.

Build status

Features

  • Remove unwanted files from various archive formats using a CSV filter file.
  • Supports .zip, .tar, .tar.gz, and .tar.xz archives.

Installation

Archives of precompiled binaries for expurgator are available for macOS and Linux.

Linux binaries are static executables.

If you're a Debian user (or a user of a Debian derivative like Ubuntu), then expurgator can be installed using a binary .deb file provided in each expurgator release.

$ curl -LO https://github.com/attilarepka/expurgator/releases/download/0.1.3/expurgator_0.1.3_amd64.deb
$ sudo dpkg -i expurgator_0.1.3_amd64.deb

Building

expurgator is written in Rust, so you'll need Rust installation in order to compile it. expurgator compiles with Rust 1.70.0 (stable) or newer. In general, it tracks the latest stable release of the Rust compiler.

$ git clone https://github.com/attilarepka/expurgator.git
$ cd expurgator
$ cargo build --release

Usage

Expurgator provides a command-line interface with the following options:

Usage: expurgator [OPTIONS] --input <INPUT> --csv <CSV> --index <INDEX>

Options:
  -i, --input <INPUT>
      Specify the input archive file.
  --csv <CSV>
      Specify the CSV file containing the list of files to be removed.
  --index <INDEX>
      Index of the field in the CSV containing the list of files to be removed.
  --with-headers
      Specify this flag if the CSV contains a header record [default: false].
  -o, --output <OUTPUT>
      Specify the output file [default: --input-file].
  --compression <COMPRESSION>
      Set the compression level [default: 6].
  -h, --help
      Print help.
  -V, --version
      Print version.

Contributing

Contributions are welcome! Open a GitHub issue or pull request.

License

This project is licensed under the MIT license

About

expurgator is an efficient Rust utility for cleaning and purging unwanted files from archive formats

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages