Compression is the reduction of the number of bits needed to store data.
Compression saves storage space and allows for speedy file transfers and low bandwidth. Furthermore, it's useful in creating backups in case of disk failure.
The data-holding services we use today all use some sort of compression to limit file size. For example, mp3 players have a special .mp3 file format that compresses music files.
Compression is mainly achieved by removing redundant data. For example, if you had an image of the flag below.
If you wanted to describe the flag to a friend, you wouldn't say "green on pixel 1x1, green on pixel 1x2, green on pixel 1x3..." and so on. You'd simply say "image-height: 300, image-width: 400, split into thirds vertically with green, white and red colors from left to right." Image compression works just like this, eliminating any redundant information.
There are two types of compression algorithms - lossy and lossless.
In a lossy algorithm, some of the data is lost in trade for a smaller file size. An example of this would be the .mp3 file format, which eliminites less audible sounds.
Lossless files, on the other hand, preserves all data contained in the original file. Considering any loss of data is intolerable in files, we'll be looking at compressing using commands that use lossless algorithms.
The Linux Command Line takes you from your very first terminal keystrokes to writing full programs in Bash, the most popular Linux shell. Along the way you'll learn the timeless skills handed down by generations of gray-bearded, mouse-shunning gurus: file navigation, environment configuration, command chaining, pattern matching with regular expressions, and more.$ Check price
Ever feel achy from sitting crunched up on your computer table? Try lying down with these optical glasses that allow you to work on your laptop while lying flat on your back. This is the perfect solution with those with limited mobility or those who wish to prevent neck cramps and back strains.$ Check price