V tomto článku se podíváme na to, jak provádět normální operace se soubory na komprimovaných souborech pomocí výkonných příkazů Linux Z.
Některé z těchto příkazů z dočasně dekomprimují soubor v adresáři /tmp za účelem provedení zadané operace. Některé z příkazů z jej za běhu dekomprimují, aby provedly zadanou operaci. V každém případě však příkazy z poskytují klid, protože se nechcete starat o režii související s dekomprimací komprimovaného souboru za účelem provedení operace.
S komprimovaným souborem můžete provádět následující běžné operace se soubory
- Zobrazení komprimovaného souboru pomocí zcat.
- Stránkování komprimovaného souboru pomocí zless / zmore.
- Hledání uvnitř komprimovaného souboru pomocí zgrep / zegrep.
- Porovnání souboru pomocí zdiff / zcmp
Příklad 1:Zobrazení komprimovaného souboru a dekomprimace pomocí zcat
Komprimací souboru pomocí gzip se vytvoří komprimovaný soubor s příponou *.gz. Komprimovaný soubor pomocí zcat můžete zobrazit následujícím způsobem. Což by bylo stejné jako operace nekomprimovaného souboru „cat filename“. zcat dekomprimuje soubor a zobrazí jej ve stdout.
$ zcat filename.gz | more
$ ls -l big-file.* -rw-r--r-- 1 ramesh ramesh 24853275 May 9 15:14 big-file.txt $ gzip big-file.txt [Note: Compress the file] $ ls -l big-file.* -rw-r--r-- 1 ramesh ramesh 9275204 May 9 15:14 big-file.txt.gz $ zcat big-file.txt.gz [Note: View the file without uncompressing it] zcat big-file.txt.gz > big-file.txt [Note: Uncompress the file]
Příklad 2:Zobrazení souboru gzip, který nemá příponu gz.
Můžete dekomprimovat soubor gzip, který nemá příponu gz. Pokud se pokusíte dekomprimovat soubor gzip, který nemá příponu gz, příkazem „gunzip“ nebo „gzip -d“, budete čelit následující chybě.
gunzip: auth.log: unknown suffix -- ignored
Ale tento zcat rozbalí soubor a zobrazí obsah, jak je uvedeno níže.
$ cat > test-file.txt This is a test file used for gunzip and zcat testing zcat is awesome command. $ gzip test-file.txt $ mv test-file.txt.gz test-file-no-ext $ gzip -d test-file-no-ext gzip: test-file-no-ext: unknown suffix -- ignored $ zcat test-file-no-ext This is a test file used for gunzip and zcat testing zcat is awesome command.
Příklad 3:Zobrazte obsah souboru bez obav, zda je komprimovaný nebo ne
Pokud si nejste jisti, zda je soubor komprimován či nikoli, můžete jej stále zobrazit, aniž byste se museli obávat o jeho stav komprese, jak je uvedeno níže.
V tomto příkladu, pokud je vstupní soubor komprimovaný, zcat zobrazí obsah jeho dekomprimací. Pokud vstupní soubor není komprimovaný, zcat zobrazí obsah tak, jak je.
$ zcat -f input-file
Příklad 4:Stránkování komprimovaného souboru pomocí zless / zmore.
Zkomprimovaný soubor můžete stránkovat pomocí příkazu zless nebo zmore, jak je znázorněno níže.
$ zcat filename.gz | more $ zcat filename.gz | less (or) $ zless filename.gz $ zmore filename.gz
Poznámka: Chcete-li otevřít jakýkoli typ souboru, přečtěte si náš předchozí článek Otevřít a zobrazit 10 různých typů souborů pomocí příkazu Linux Less – Ultimate Power of Less.
Příklad 5:Hledání uvnitř komprimovaného souboru pomocí zgrep / zegrep.
Uvnitř komprimovaného souboru můžete vyhledávat pomocí zgrep / zegrep, jak je uvedeno níže. To by bylo stejné jako operace nekomprimovaného souboru ‚grep -i název_souboru‘. Všechny volby příkazu zgrep budou předány příkazu grep a soubor bude předán příkazu grep. V případě potřeby může soubor dekomprimovat a odeslat příkazu grep.
$ cat > test-file.txt gzip, gunzip, zcat - compress or expand files zless - file perusal filter for crt viewing of compressed text zcmp, zdiff - compare compressed files $ grep -i less test-file.txt zless - file perusal filter for crt viewing of compressed text $ gzip test-file.txt $ zgrep -i less test-file.txt.gz zless - file perusal filter for crt viewing of compressed text
Poznámka: Seznamte se s příkazem grep tím, že si přečtete náš dřívější článek Get a Grip on the Grep! – 15 praktických příkladů příkazů Grep.
Příklad 6:Porovnání souboru pomocí zdiff / zcmp
Můžete porovnat dva komprimované soubory se zdiff / zcmp, jak je uvedeno níže. To by bylo stejné jako operace s nekomprimovaným souborem ‚diff soubor1 soubor2‘.
$ cat > file1.txt This is line one This is line two $ cat > file2.txt This is line 1 This is line two $ diff file1.txt file2.txt 1c1 < This is line one --- > This is line 1 $ gzip file1.txt file2.txt $ zdiff file1.txt.gz file2.txt.gz 1c1 < This is line one --- > This is line 1
Tento článek napsal SathiyaMoorthy , Autor článků Vi / Vim Tipy a triky. The Geek Stuff uvítá vaše tipy a články hostů.