Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Extractor is a Bash script utility designed to handle the extraction of various compressed file formats.

License

Notifications You must be signed in to change notification settings

ErvisTusha/Extractor

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📦 Extractor - Advanced Archive Extraction Tool

Version License Bash

A powerful, feature-rich bash script for extracting various archive formats with advanced capabilities.

Extractor Logo

✨ Features

  • 📚 Supports multiple archive formats:

    • ZIP (including password-protected)
    • TAR (and variants: tar.gz, tar.bz2, tar.xz)
    • RAR (including password-protected)
    • 7Z (including password-protected)
    • GZIP, BZIP2, XZ
    • JAR, WAR
    • Compressed archives (.Z)
    • CPIO and AR archives
  • 🛡️ Advanced Security Features:

    • Password protection detection

    • Secure password handling

    • Clean password memory after extraction

  • 🚀 Performance Features:

    • Parallel extraction support
    • System load monitoring
    • Progress tracking
    • Efficient memory usage
  • 📊 Robust Logging:

    • Colored output
    • Multiple log levels (DEBUG, INFO, WARN, ERROR, FATAL)
    • Configurable log locations
    • Detailed error reporting

Installation

# Direct installation
curl -sSL https://raw.githubusercontent.com/ErvisTusha/extractor/main/extractor.sh | sudo bash -s install

# Or clone and install
git clone https://github.com/ErvisTusha/extractor.git
cd extractor
sudo ./extractor.sh install

Basic Usage

# Extract a single file
extractor file.zip

# Extract to specific directory
extractor -o /path/to/output file.tar.gz

# Extract password-protected archive
extractor -P mypassword encrypted.zip

# Extract multiple files in parallel
extractor -p file1.zip file2.tar.gz file3.rar

🎯 Command Line Options

Options:
    -h, --help          | Show this help message
    -v, --version       | Show version information
    -o, --output        | Specify output directory (default: current directory)
    -p, --parallel      | Enable parallel extraction
    -P, --password PWD  | Specify password for encrypted archives
    --dry-run          | Perform a dry run without extracting files
    --force            | Force extraction even if collisions are detected
    install            | Install the script globally
    uninstall          | Remove the script
    update             | Update to the latest version

🔧 Requirements

  • Bash 4.0 or higher
  • Standard Unix tools (tar, gzip, etc.)
  • Optional tools for specific formats:
    • unzip for ZIP files
    • unrar for RAR files
    • 7z for 7Z files

🏗️ Development

This script was developed using:

  • VSCode as the primary IDE
  • Claude 3.5 Sonnet for AI assistance
  • Modern bash scripting practices

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

Distributed under the MIT License. See LICENSE file for more information.

👤 Author

Ervis Tusha

🙏 Acknowledgments

  • VSCode team for the excellent IDE
  • Claude AI for development assistance
  • The open-source community for inspiration

Made with ❤️ by Ervis Tusha

Morty Proxy This is a proxified and sanitized view of the page, visit original site.