The Geek Diary
Introductie
In dit artikel gaan we leren hoe je bestanden comprimeert met behulp van bz2-bestandscompressie tool (bzip2 linux-opdracht) en pak het gecomprimeerde bz2-bestand uit. bzip2 is een open source-compressietool vergelijkbaar met zip & gzip-compressietool die wordt gebruikt om grote bestanden te comprimeren om de grootte ervan te verkleinen. bzip2 kan bestanden comprimeren, geen mappen. bzip2 geeft meer compressie in vergelijking met gzip en zip. Het bzip2 Linux-commando is ontwikkeld door Julian Seward in 1996 en vrijgegeven onder BSD-stijllicentie.
Waarom we een bestand moeten comprimeren. Laten we een voorbeeld nemen. Stel dat u een e-mail wilt sturen naar iemand met een bijlage. maar de bestandsgrootte van uw bijlage is groter dan de toegestane limiet voor de grootte van de bijlage. In dat geval kunt u de bz2-bestandscompressietool (bzip2 linux-opdracht) gebruiken om het bestand te comprimeren om de grootte van het bestand te verkleinen. Enkele belangrijke kenmerken van de bz2-bestandscompressietool zijn:
- Het is een platformonafhankelijke applicatie die beschikbaar is voor de belangrijkste besturingssystemen, zoals Linux, Microsoft Windows, MacOS.
- Kan gegevens herstellen van beschadigde bz2-bestand.
- Beschikbaar voor zowel 32 bit als 64 bit besturingssysteem.
- Kan een snelle en beste compressie van de bestanden creëren.
Nu laten we eens kijken naar het bzip2 Linux-commando met voorbeelden:
Comprimeer een bestand
Comprimeer een bestand met het bzip2 Linux-commando.
$ bzip2 myfile.txt # Compress a File
Uitvoer:
$ lsmyfile.txt.bz2
Comprimeer een bestand met een standaard uitvoer
bzip2 commando met -c zal het bestand comprimeren met een standaard output.
$ bzip2 -c myfile.txt > myfile.txt.bz2 # Compress a file with standard output
Output:
$ lsmyfile.txt myfile.txt.bz2
Comprimeer een bestand door het invoerbestand (Bronbestand) te behouden
Normaal gesproken comprimeert het bzip2-commando het bestand en verwijdert het de Bronbestand maar bzip2-commando met argument – k zal het bestand comprimeren door het bronbestand niet verwijderd te houden.
$ bzip2 -k myfile.txt # Compress file without delete Input file
Uitvoer:
$ lsmyfile.txt myfile.txt.bz2
Comprimeer meerdere bestanden tegelijk
bz2 bestandscompressietool (bzip2 linux commando) kan meerdere bestanden tegelijk comprimeren. Gebruik hiervoor het onderstaande commando.
$ bzip2 myfile.txt myfile1.txt myfile2.txt myfile3.txt # Compress multiple files at once
Uitvoer:
$ lsmyfile1.txt.bz2 myfile2.txt.bz2 myfile3.txt.bz2 myfile.txt.bz2
Controleer de integriteit van een gespecificeerd bestand
bzip2 linux commando met argument -t controleert de integriteit van een gespecificeerd bz2 bestand. Integriteit in de zin dat het bz2-bestand een geldig bestand is of niet. U kunt dit doen met behulp van onderstaande opdracht. Als het bestand geldig is, krijg je geen uitvoer.
$ bzip2 -t myfile.txt.bz2 # Check the Integrity of the bz2 file
Maar als het bz2-bestand geen geldig bestand is, zul je krijg fout. Om dit te bewijzen, maken we een bzip2-bestand met behulp van het touch-commando en vervolgens controleren op integriteit.
$ touch myfile.txt.bz2
$ bzip2 -t myfile.txt.bz2 bzip2: myfile.txt.bz2: file ends unexpectedly
U kunt het programma “bzip2recover” gebruiken om te proberen gegevens te herstellen van onbeschadigde delen van beschadigde bestanden. Zoals u hierboven kunt zien, kregen we de foutmelding omdat we dit bestand niet hebben gemaakt met bzip2 linux-commando, daarom is het geen geldig bz2-bestand.
Uncompress / Extract / Unzip bz2-bestand
bzip2-commando met argument -d zal het bzip2-bestand decomprimeren.
$ bzip2 -d myfile.txt.bz2 # Uncompress a file
Uitvoer:
$ lsmyfile.txt
U kunt gebruik ook het bunzip2-commando om het bz2-bestand uit te pakken. Raadpleeg het onderstaande commando.
$ bunzip2 myfile.txt.bz2
Uitvoer:
$ lsmyfile.txt
Controleer de inhoud van een gecomprimeerd bz2-bestand met de opdracht bzcat
U kunt de inhoud van een gecomprimeerd bestand controleren zonder het uit te pakken. Om dit te doen we moeten het bzcat commando gebruiken. Verwijs de co mm en hieronder.
$ bzcat myfile.txt.bz2 # Check content of a Compressed fileWelcome to thegeekdiary.com
Comprimeer een bestand krachtig
bzip2 commando met argument -f zal een bz2 maken krachtig bestand. Raadpleeg de onderstaande opdracht.
$ bzip2 -f myfile.txt # Compress a file forcefully
$ lsmyfile.txt.bz2
Comprimeer een map met het bz2-bestandscompressietool
Door het enige bzip2 linux-commando te gebruiken, kunnen we een map niet comprimeren, maar het bzip2-commando met het tar-commando kan een map comprimeren. Gebruik het onderstaande commando om hetzelfde te doen.
$ tar -cjvf data.tar.bz2 data/ # Compress a Directorydata/data/myfile3.txtdata/myfile2.txtdata/myfile1.txt
Uitvoer:
$ lsdata data.tar.bz2
Hier is argument -j voor bzip2-compressie.
Compressieniveaus
Er zijn 9 compressieniveaus beschikbaar in elke compressie gereedschap. De niveaus zijn 1,2 … 9. Hier laat ik je twee niveaus zien. d.w.z. Niveau 1 & Niveau 9.
Niveau 1 geeft snelle compressie-uitvoer. Raadpleeg het onderstaande commando.
$ bzip2 -1 myfile.txt # 1 for Fast Compression
Niveau 9 geeft de beste compressie-uitvoer. Raadpleeg de onderstaande opdracht.
$ bzip2 -9 myfile.txt # 9 for Best Compression
Controleer de licentie & Pakketversie van het bzip2 Linux-commando
Gebruik bzip2 commando met argument -L om de licentie te controleren & Pakketversie van bz2 bestandscompressietool.
$ bzip2 -L # Check Version & Licensebzip2, a block-sorting file compressor. Version 1.0.6, 6-Sept-2010. Copyright (C) 1996-2010 by Julian Seward. This program is free software; you can redistribute it and/or modify it under the terms set out in the LICENSE file, which is included in the bzip2-1.0.6 source distribution. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LICENSE file for more details.
Voor meer hulp en informatie over het bzip2 Linux-commando kun je het onderstaande commando gebruiken.
$ man bzip2 # Access bzip2 manual page