Skip to content
/ Zipx Public

Compress, decompress files & view their content easily (All in one) - (tar, tar.gz, tgz, tar.bz2, tbz2, tar.xz, zip, 7z, gz, bz2, xz, rar, pkg, pax, lzma, lzip, cab)

License

Notifications You must be signed in to change notification settings

Syyysco/Zipx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Zipx - An all-in-one tools to handle compression methods
GitHub Release
Build on bash license Last Commit Available debian install package

Zipx is a best zip de/compressor All-in-one.

Sysco - A mad hardcoder

Zipx Documentation

A professional command-line tool designed for Linux systems that unifies compression, decompression, and content listing for virtually all known archive formats. This tool simplifies handling multiple formats with a single interface, saving time and eliminating the need for separate tools.


Table of Contents


Features

  • Unified interface: Manage all supported formats with consistent commands.
  • Recursive decompression: Automatically handles nested archives.
  • Selective listing: Choose between direct or recursive archive content listings.
  • Custom compression formats: Specify the desired format using a simple flag.
  • Error handling and feedback: Clear error messages and return codes for seamless operation.

Supported Formats

The tool supports a wide range of formats for compression and decompression:

Category Formats
Common Formats tar, zip, gzip (gz), bzip2 (bz2), xz
Compressed Tar Formats tar.gz (tgz), tar.bz2 (tbz2), tar.xz
Advanced Formats 7z, rar, pax, pkg
Specialized Formats cab, lzma, lzip

Note

  • Additional formats can be added as extensions via modular updates.
  • Ensure the required dependencies are installed for specific formats (e.g., p7zip-full for .7z files).

Installation

If you don't want to install zipx and just want to use it in a portable way you can follow one of the following alternatives:

  • Clone the repository and run it:

    git clone https://github.com/Syyysco/Zipx.git
    cd Zipx
    ./zipx -v
  • Download the portable binary from the releases page and then you can run it as follows:

    zipx -v

Prerequisites

  • Linux distribution: Ubuntu, Debian, or any Linux system with apt.

Steps to Install

  1. Go to releases page and download the x64 or x86 .deb file (depending on your platform, usually x64)
  2. Install the package:
    sudo dpkg -i zipx_x64_1.0_20250201_linux.deb
    sudo apt install -f

    The .deb file used in the example should be replaced with the name of the downloaded file.


Tip

Build

If you want to compile the code because you have made some changes, go to the "how to build" section of the repository.



Usage

Help Panel

To view the help panel, use:

zipx -h

This displays all available commands, flags, and info:

Use: zipx [options] file

Options:
  -h, --help        Show this help panel
  -l, --less        Show the contents of the compressed file without extracting it
  -L, --less-tree   List the entire contents recursively in tree format
  -z, --zip         Compress the file or folder in the format specified with -f
  -x, --unzip       Decompress the file recursively until there are no more compressed files
  -q, --quiet       Run the program in silent mode without displaying output
  -o, --output      Specify an output file
  -f, --format      Compression format
                     ( tar tar.gz tgz tar.bz2 tbz2 tar.xz zip 7z gz bz2 xz rar pkg pax lzma lzip cab )

Compress Files

To compress files or directories into a specific format, use:

zipx -z input_file -f tar.gz

Example:

Compress a directory:

zipx -z my_folder -f zip

Decompress Files

To extract files from any supported archive:

zipx -x archive_file

Example:

Decompress a .tar.gz archive:

zipx -x archive.tar.gz

List Archive Contents

Direct Content Listing

To list only the top-level contents of an archive:

zipx -l archive_file

Recursive Listing

To list all nested contents in a tree-like structure:

zipx -L archive_file

Dependencies

If you installed the .deb file and ran the commands in the installation section you should have all the dependencies installed.

The application requires the following tools for full functionality:

Tabla: Dependencias, Funciones y Usos en la Aplicación

Dependence Function Use on application
tar Compress and decompress files and folders in tar, tar.gz, tar.bz2, tar.xz formats Provides core functionality for .tar, .tgz, .tbz2, .tar.xz formats
gzip Compress and decompress .gz files Used to handle gzip compressed files
unzip Extract .zip files Extract files and folders from .zip archives
zip Compress files and folders in .zip format Facilitates the compression of files and folders in .zip format
lsd List directory contents with colors and distinguish item types Used to display content in compressed directories in a visual and color-coded manner
tree Display recursive content in tree form Displays hierarchy of compressed file contents
p7zip-full Handle compressed files in .7z format Makes it easy to compress and decompress .7z files
unrar Extract .rar files Handles decompression of .rar files
rar Compress files in .rar format Allows you to create compressed files in .rar format
gcab Compress and decompress .cab files Used to create and extract .cab files
lzip Compress and decompress .lzip files Facilitates handling of compressed files with lzip
xz-utils Compress and decompress .xz files Provides support for the .xz format
gzip Decompress .gz files Allows you to handle .gz files
pax Create and extract .pax files Facilitates handling of pax compressed files
libarchive-tools Handle multiple archive formats, including .pkg and .pax Unzip and manipulate files packed in various formats

Important

If you have any problems with dependencies, go to the possible errors section.


Example of use in compression:

case "$format" in
    cab)
        gcab -c "$output" "$input" &> /dev/null;;
esac

Example of use in decompression:

case $(file --mime-type -b "$file") in
    application/vnd.ms-cab-compressed)
        gcab -x "$file" -C "$temp_dir" &> /dev/null;;
esac

Automatically Install Missing Dependencies

If any dependencies are missing, the application prompts you to install them using apt:

sudo apt install -y <missing_tools>

Possible errors

Package RAR

Error: Unable to locate package rar

Sometimes in some distributions the rar package is not available because it is a proprietary software, to install it outside of apt follow these steps:

Option 1:

  1. Edit the /etc/apt/preferences file and add these lines: (if the file does not exist on your system you will need to create it)
  Package: *
  Pin: release a=unstable
  Pin-Priority: 50
  These lines configure apt to use packages from the unstable branch only if they do not exist in your main branch.
  1. Edit the /etc/apt/sources.list file and add this line if it does not already exist:
deb http://ftp.debian.org/debian/ unstable main contrib non-free
  1. Update the sources and install with:
apt-get update
apt-get install rar

Note

If you do not have administrator permissions and when trying to install you get an error for this reason try sudo apt-get install rar.

Option 2:

  1. Download the .tar file (for linux) from here
  2. Go to the directory where you downloaded the file with cd /home/your_user/Downloads
  3. Unzip and install as follows:
tar xvfz rarlinux-3.6.1.tar.gz
cd rar
make install
cd ..
rm -R rar

License

zipx is made available under the terms of either the GNU General Public License (GPL).
You are free to use, modify, and distribute this project, provided you comply with the terms of the license.
The full license details are available in the LICENSE file.

For more information about the GPL License, visit the official GNU website.





Sysco - A mad hardcoder



About

Compress, decompress files & view their content easily (All in one) - (tar, tar.gz, tgz, tar.bz2, tbz2, tar.xz, zip, 7z, gz, bz2, xz, rar, pkg, pax, lzma, lzip, cab)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages