Příkazy Unix Z - Příklady Zcat, Zless, Zgrep, Zegrep a Zdiff

V tomto článku si přečtěte, jak provést normální provoz souborů na komprimovaných souborech pomocí mocných příkazů Linux Z. Některé z těchto příkazů z dočasně dekomprimovaly soubor do adresáře / tmp a provedli tak danou operaci. Některé z příkazů z ji nekomprimovaly, aby provedli zadanou operaci. Ale v každém případě z příkazy dává klid, protože se nechcete starat o režii rozbalování komprimovaného souboru pro provedení operace.

V komprimovaném souboru můžete provádět následující normální operace souborů.

1) Zobrazení komprimovaného souboru pomocí příkazu zcat.
2) Paging komprimovaného souboru pomocí zless / zmore.
3) Hledání uvnitř komprimovaného souboru pomocí zgrep / zegrep.
4) Porovnání souboru pomocí zdiff / zcmp

Příklad 1: Zobrazení komprimovaného souboru a nekomprimovaného příkazem zcat

Komprese souboru pomocí gzip vytvoří komprimovaný soubor s příponou * .gz a veškerým extenčním souborem .zip Soubor komprimovaný zcatem můžete zobrazit následujícím způsobem. Což by bylo stejné jako operace nekomprimovaného souboru 'cat filename'. zcat soubor dekomprimoval a zobrazil jej ve stdout.

[[Email chráněn] Desktop] $ zcat sample_file.zip
CDKNMS4 524694651735812 671553
CDKNMS5 48438918995161307 2411416
CDKNMS7 3408654159724 1545241
CDMBMS1361 936517 274 300
[[Email chráněn] Desktop] $

[[Email chráněn] Desktop] $ zcat Compliance.gz
CDKNMS5 48438918995161307 2411416
CDKNMS7 3408654159724 1545241
CDMBMS1361 936517 274 300

Příklad 2: Zobrazit soubor gzip, který nemá příponu .gz

Můžete dekomprimovat soubor gzip, který nemá příponu gz. Pokud se pokusíte rozbalit soubor gzip, který nemá příponu .gz příkazem "gunzip" nebo "gzip -d", budete čelit následující chybě.

[[Email chráněn] Desktop] $ gunzip sample_file
gzip: sample_file: neznámá přípona - ignorována
[[Email chráněn] Desktop] $

Tento zcat však rozbalí soubor a zobrazí obsah, jak je znázorněno níže.

[[Email chráněn] Desktop] $ cat> sample_file
Toto je testovací soubor používaný pro testy gunzip a zcat pro tento článek
to je síla z příkazu

[[Email chráněn] Desktop] $ gzip sample_file

[[Email chráněn] Desktop] $ mv sample_file.gz sample_file

[[Email chráněn] Desktop] $ gzip -d sample_souboru
gzip: sample_file: neznámá přípona - ignorována
[[Email chráněn] Desktop] $

[[Email chráněn] Desktop] $ zcat sample_file
Toto je testovací soubor používaný pro testy gunzip a zcat pro tento článek
to je síla z příkazu
[[Email chráněn] Desktop] $

Příklad 3: Zobrazte obsah souboru bez obav o tom, zda je komprimovaný nebo ne

Pokud si nejste jisti, zda je soubor komprimován nebo nikoli, můžete soubor zobrazit, aniž byste se obávali o jeho stav komprese, jak je uvedeno níže.

V tomto příkladu Pokud je vstupní soubor komprimován zcat, zobrazí se obsah tím, že ho dekomprimuje. Pokud vstupní soubor není komprimován, zcat zobrazí obsah jako takový.

[[Email chráněn] Desktop] $ zcat -f sample_file
CDKNMS4 524694651735812 671553
CDKNMS5 48438918995161307 2411416
CDKNMS7 3408654159724 1545241

Příklad 4: Paging komprimovaného souboru pomocí zless / zmore

Můžete komprimovat komprimovaný soubor pomocí příkazu zless nebo zmore, jak je znázorněno níže.

[[Email chráněn] Desktop] $ zmore passwd_file.gz
-> passwd_file.gz <-
kořen: x: 0: 0: kořen: / root: / bin / bash
bin: x: 1: 1: bin: / bin: / sbin / nologin
démon: x: 2: 2: daemon: / sbin: / sbin / nologin
adm: x: 3: 4: adm: / var / adm: / sbin / nologin
lp: x: 4: 7: lp: / var / spool / lpd: / sbin / nologin

[[Email chráněn] Desktop] $ zless passwd_file.gz
tss: x: 59: 59: Účet používaný balíčkem kalhot do sandboxu démona tcsd: / dev / null: / sbin / nologin
apache: x: 48: 48: Apache: / var / www: / sbin / nologin
mysql: x: 27: 27: server MySQL: / var / lib / mysql: / bin / bash
systemfj: x: 501: 489 :: / opt / ibm / ibm-config-firejail / systemfj: / bin / bash
passwd_file.gz (END)

Příklad 5: Hledání uvnitř komprimovaného souboru pomocí zgrep / zegrep

V komprimovaném souboru můžete vyhledávat pomocí zgrep / zegrep, jak je znázorněno níže. Toto by bylo stejné jako operace nekomprimovaného souboru 'grep -i filename'. Všechny možnosti příkazu zgrep budou předány do adresáře grep a soubor bude přenesen do příkazu grep. V případě potřeby může soubor dekomprimovat a přenést do příkazu grep.

1) Vyhledejte vzorek v souboru spolu s přidruženým číslem řádku pomocí parametru -n v komprimovaném souboru.

[[Email chráněn] Desktop] $ zgrep -n mysql passwd_file.gz
39: mysql: x: 27: 27: server MySQL: / var / lib / mysql: / bin / bash
[[Email chráněn] Desktop] $

2) Zobrazí všechny řádky, které začínají zadaným vzorem pomocí symbo symbo v komprimovaném souboru.

[[Email chráněn] Desktop] $ zgrep ^ kořenový adresář passwd_file.gz
kořen: x: 0: 0: kořen: / root: / bin / bash
[[Email chráněn] Desktop] $

3) Zobrazte všechny řádky, které končí zadaným vzorem, pomocí symbolu $ v komprimovaném souboru.

[[Email chráněn] Desktop] $ zgrep bash $ passwd_file.gz
kořen: x: 0: 0: kořen: / root: / bin / bash
shaha: x: 500: 501: Shaha Alam: / home / shaha: / bin / bash
mysql: x: 27: 27: server MySQL: / var / lib / mysql: / bin / bash
systemfj: x: 501: 489 :: / opt / ibm / ibm-config-firejail / systemfj: / bin / bash
[[Email chráněn] Desktop] $

4) vyhledá všechny prázdné nebo prázdné řádky souboru pomocí zgrep v komprimovaném souboru.

[[Email chráněn] Desktop] $ zgrep ^ $ passwd_file.gz
[[Email chráněn] Desktop] $

5) Zobrazí počet řádků N před a po přizpůsobení vzoru v komprimovaném souboru.

a) Zobrazte čtyři řádky předtím, než použijete volbu -B v komprimovaném souboru.

[Email chráněn]: ~ # zgrep -B 4 "hry" / etc / passwd

b) Zobrazit čtyři řádky po přizpůsobení vzoru pomocí možnosti -A v komprimovaném souboru.

[Email chráněn]: ~ # zgrep -A 4 "hry" / etc / passwd

c) Zobrazte čtyři řádky kolem vzoru, který odpovídá možnosti -C v komprimovaném souboru.

[Email chráněn]: ~ # zgrep -C 4 "hry" / etc / passwd

Příklad 6: Vícenásobné vyhledávání uvnitř komprimovaného souboru pomocí příkazu zegrep

příkaz zegrep s více vzory regexu, který snižuje výstup mnohem více, egrep příkaz pro provádění vyhledávání na více regulárních výrazů neslučitelných s malými a velkými písmeny.

a) Vyhledejte více vzorků v komprimovaném souboru pomocí příkazu zegrep

[[Email chráněn] Desktop] $ zegrep 'shah | root | apache' passwd_file.gz
kořen: x: 0: 0: kořen: / root: / bin / bash
operátor: x: 11: 0: operátor: / root: / sbin / nologin
shaha: x: 500: 501: Shaha Alam: / home / shaha: / bin / bash
apache: x: 48: 48: Apache: / var / www: / sbin / nologin
[[Email chráněn] Desktop] $

b) Vyhledejte více vzorků v souboru spolu s přidruženými čísly řádků pomocí volby -n v komprimovaném souboru

[[Email chráněn] Desktop] $ zegrep -n 'shah | root | apache' passwd_file.gz
1: kořen: x: 0: 0: kořen: / root: / bin / bash
11: operátor: x: 11: 0: operátor: / root: / sbin / nologin
36: shaha: x: 500: 501: Shaha Alam: / home / shaha: / bin / bash
38: Apache: x: 48: 48: Apache: / var / www: / sbin / nologin
[[Email chráněn] Desktop] $

c) Zadejte název souboru komprimovaných souborů, které obsahují více vzorků pomocí volby -l.

[[Email chráněn] Desktop] $ zegrep -l 'shah | root | apache' * .gz
passwd_file1.gz
passwd_file2.gz
passwd_file3.gz
passwd_file.gz
[[Email chráněn] Desktop] $

Příklad 6: Srovnání souboru pomocí zdiff / zcmp

Můžete porovnat dva komprimované soubory s zdiff / zcmp, jak je znázorněno níže. To by bylo stejné jako u operace nekomprimovaného souboru 'diff file1 file2'.

[[Email chráněn] Desktop] $ cat> file1.txt
To je první řádek
To je druhá linka

[[Email chráněn] Desktop] $ cat> file2.txt
Toto je řádek 1
To je druhá linka

[[Email chráněn] Desktop] $ diff soubor1.txt file2.txt
1c1
Toto je řádek 1

[[Email chráněn] Desktop] $ gzip soubor1.txt file2.txt

[[Email chráněn] Desktop] $ zdiff soubor1.txt.gz file2.txt.gz
1c1
Toto je řádek 1

závěr

V tomto článku se dozvíme, že příkaz příkazu unix Z, příkazy z dočasně dekomprimovali soubor v adresáři / tmp, aby provedli zadanou operaci. Některé příkazy z ji nekomprimovaly, aby provedli zadanou operaci. Ale v každém případě z příkazy dává klid, protože se nechcete starat o režii rozbalování komprimovaného souboru pro provedení operace.

Příspěvek Příkazy Unix Z - Příklady Zcat, Zless, Zgrep, Zegrep a Zdiff se objevil nejprve na LinOxide.

Napsat komentář