Skip to content

Minimalistic Multithreaded Command Line for Gunziping

License

Notifications You must be signed in to change notification settings

MauricePasternak/SuperGZip

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SuperGzip

Table of Contents

About

This is a command line tool for batch gunzip behavior using multithreading spread across multiple files matched by a user-provided glob pattern.

Getting Started

Head on over to the Releases section of the repository and download the appropriate version for your operating system. Unzip and use in a command line terminal at your own discretion.

Usage

General syntax is as follows:

super-gunzip <gzip | unzip> <glob pattern> [options]

Where current options are:

  • -h or --help: If this tag is present, the program will print the help message and exit.
  • -k or --keep_original: If this tag is present, the program will not attempt to remove the original file.
  • -n <number> or --num_threads <number>: The number of threads to split the workload across. It is the responsibility of the user to ensure that the number provided is reasonable. Defaults to 1.
  • -v or --verbose: If this tag is present, the program will print the name of each file as it is processed.

ℹ️ Note: On Unix, the use of the wildcard * character will require the use of quotes to prevent the shell from expanding the pattern before it is passed to the program. On Windows, this is not necessary. See the examples below.

Examples

# Get more information about the tool
super-gunzip --help
super-gunzip gzip --help
super-gunzip unzip --help

# Unzip or gzip all files in an indicated directory
super-gunzip gzip "some/filepath/glob/pattern*"
super-gunzip unzip "some/filepath/glob/pattern*.gz"

# Utilize multithreading
super-gunzip gzip "some/filepath/glob/pattern*" --num-threads 12
super-gunzip unzip "some/filepath/glob/pattern*.gz" --num-threads 12