Last Updated : 12 Jul, 2024
Summarize
Comments
Improve
gzip command compresses files. Each single file is compressed into a single file. The compressed file consists of a GNU zip header and deflated data. If given a file as an argument, gzip compresses the file, adds a “.gz” suffix, and deletes the original file. With no arguments, gzip compresses the standard input and writes the compressed file to the standard output.
Basics of gzip:
Gzip, short for GNU Zip, is a command-line compression tool commonly found on Linux systems. It utilizes the DEFLATE compression algorithm to reduce the size of files, making them more manageable for storage and transmission.
Table of Content
- Basics of gzip:
- Difference between Gzip and zip command in Unix and when to use which command
- Syntax of the gzip Command
- Options Available in gzip Command
- Basic Compression using gzip Command in Linux
- How to decompress a gzip file in Linux?
- Keeping the Original File Using gzip Command in Linux
- Verbose Mode Using gzip Command in Linux
- Force Compression Using gzip Command in Linux
- Compressing Multiple Files Using gzip Command in Linux
- Recursive Compression with find Using gzip Command in Linux
Difference between Gzip and zip command in Unix and when to use which command
Feature | Gzip | Zip |
---|---|---|
Compression Algorithm | Uses the DEFLATE algorithm. | Uses various compression algorithms, including DEFLATE, LZ77, and others. |
File Format | Typically appends “.gz” to compressed files. | Uses “.zip” extension for compressed archives. |
Archiving Approach | Common practice is to use tarball (.tar) before compression. | Compresses individual files and then adds them to the archive. |
File Extraction | Requires decompression of the entire file before extracting specific files. | Allows direct extraction of individual files without full decompression. |
Compression Efficiency | Generally offers better compression, especially for a large number of files. | Compression efficiency may vary, and it might be less effective than Gzip for certain scenarios. |
Extraction Time | Takes longer to extract a specific file from a compressed archive. | Allows quicker extraction of individual files from the archive. |
Ideal Use Case | Well-suited for compressing a large number of files into a single archive. | Suitable for compressing and archiving individual files with a focus on easy extraction. |
Redundancy Utilization | Efficiently utilizes redundancy in files to reduce overall file size. | May result in larger archive sizes, especially when compressing identical files multiple times. |
Syntax of the gzip Command
The basic syntax of the gzip command is straightforward:
gzip [Options] [filenames]
This syntax allows users to compress a specified file. Now, let’s delve into some practical examples to illustrate the usage of the gzip command.
Options Available in gzip Command
Options | Description |
---|---|
-f | Forcefully compress a file even if a compressed version with the same name already exists. |
-k | Compress a file and keep the original file, resulting in both the compressed and original files. |
-L | Display the gzip license for the software. |
-r | Recursively compress all files in a folder and its subfolders. |
-v | Display the name and percentage reduction for each file compressed or decompressed. |
-d | Decompress a file that was compressed using the gzip command. |
Basic Compression using gzip Command in Linux
To compress a file named “mydoc.txt,” the following command can be used:
Example:
gzip mydoc.txt
This command will create a compressed file of mydoc.txt named as mydoc.txt.gz and delete the original file.
How to decompress a gzip file in Linux?
The basic syntax of the gzip command for decompressing a file is as follows:
gzip -d filename.gz
This command decompresses the specified gzip file, leaving the original uncompressed file intact.
Keeping the Original File Using gzip Command in Linux
By default, gzip removes the original file after compression. To retain the original file, use the -k
option:
gzip -k example.txt
This command compresses “example.txt” and keeps the original file intact.
Verbose Mode Using gzip Command in Linux
To obtain more details during compression or decompression, the -v
option is employed:
gzip -v example.txt
Verbose mode provides information such as file sizes and progress during the compression or decompression process.
Force Compression Using gzip Command in Linux
In cases where the compressed file already exists, the -f
option forcefully overwrites it:
gzip -f example.txt
This command compresses “example.txt” and overwrites any existing “example.txt.gz” file
Compressing Multiple Files Using gzip Command in Linux
Gzip can compress multiple files simultaneously by providing their names as arguments:
gzip file1.txt file2.txt file3.txt
This command compresses “file1.txt,” “file2.txt,” and “file3.txt” individually.
Recursive Compression with find Using gzip Command in Linux
To compress all files in a directory and its subdirectories, the find
command can be combined with gzip:
find /path/to/directory -type f -exec gzip {} \;
This command recursively compresses all files in the specified directory.
Conclusion
In this article we discussed the gzip command which is a powerful tool on Linux for compressing and decompressing files using the DEFLATE algorithm. Its basic syntax allows for straightforward compression, with options like -k preserving the original file and -v providing detailed information. The -f option forcefully compresses, overwriting existing files, while -r facilitates recursive compression. Gzip’s versatility makes it a go-to tool for efficiently managing file sizes and navigating through directory structures.
Gzip Command in Linux – FAQs
What is gzip in Linux?
gzip
is a file compression utility in Linux that reduces the size of files using the GNU zip compression algorithm. It compresses files to save disk space and reduce transmission time.
How to gzip a file?
To compress a file using
gzip
, use the following command:gzip filename
This command compresses
filename
and replaces it withfilename.gz
.
How to make a gz file in Linux?
To create a
.gz
file in Linux, use thegzip
command:gzip filename
This will compress
filename
and create afilename.gz
file.
How to zip a folder in Linux using gzip?
gzip
cannot compress directories directly. Use thetar
command combined withgzip
to compress a folder:tar -czvf foldername.tar.gz foldername/
This command creates a compressed archive
foldername.tar.gz
of thefoldername
directory.
How to use gzip to unzip files?
To decompress a
.gz
file usinggzip
, use the-d
option:gzip -d filename.gz
This command decompresses
filename.gz
and restores the original filefilename
.
Previous Article
How to Compress Files in Linux | Tar Command
Next Article
gunzip command in Linux with examples