Príkazy pre Linux

Príkaz Linux pipe

Príkaz Linux pipe
Tento príkaz „pipe“ je ľahko dostupný na platformách UNIX / Linux. Tento príkaz prepája výstup predchádzajúceho príkazu na nasledujúci príkaz. Existujú doslova TONY situácií, keď táto metóda ponúka vážnu hodnotu.Pred hlbším skokom je treba niečo vedieť. Každý program v systéme UNIX / Linux má zabudované 3 dátové toky.

Keď budeme pracovať s trikami „pipe“, „pipe“ vezme STDOUT príkazu a odovzdá ho STDIN nasledujúceho príkazu.

Pozrime sa na niektoré z najbežnejších spôsobov, ako môžete začleniť príkaz „pipe“ do svojho každodenného používania.

Pipe príkaz

Základné použitie

Je lepšie rozpracovať pracovnú metódu „fajky“ na živom príklade, však? Začnime. Nasledujúci príkaz povie „pacman“, predvoleného správcu balíkov pre Arch a všetky distribúcie na báze Arch, aby vytlačil všetky nainštalované balíčky v systéme.

pacman -Qqe

Je to skutočne DLHÝ zoznam balíkov. Ako, o vyzdvihnutí iba niekoľkých komponentov? Mohli by sme použiť „grep“. Ale ako? Jedným zo spôsobov by bolo vyhodenie výstupu do dočasného súboru, „pozdravenie“ požadovaného výstupu a odstránenie súboru. Táto séria úloh sa dá sama o sebe zmeniť na skript. Skriptujeme však iba pre veľmi veľké veci. Pri tejto úlohe využime silu „fajky“!

pacman -Qqe | grep

Úžasné, že?? „|“ sign je volanie príkazu „pipe“. Chytí STDOUT z ľavej časti a napája ho do STDIN pravej časti.

V uvedenom príklade príkaz „pipe“ skutočne prešiel výstupom na konci časti „grep“. Takto sa to hrá.

pacman -Qqe> ~ / Desktop / pacman_package.TXT
grep python ~ / Desktop / pacman_package.TXT

Viacnásobné potrubie

V zásade nie je na pokročilom použití príkazu „pipe“ nič zvláštne. Je úplne na vás, ako ho použijete.

Začnime napríklad stohovaním viacerých potrubí.

pacman -Qqe | grep p | grep t | grep py

Výstup príkazu pacman je filtrovaný stále ďalej a ďalej „grep“ cez sériu potrubí.

Niekedy, keď pracujeme s obsahom súboru, môže byť skutočne, ale skutočne veľký. Nájsť správne miesto nášho požadovaného záznamu môže byť ťažké. Vyhľadajme všetky záznamy, ktoré obsahujú číslice 1 a 2.

ukážka mačky.txt | grep -n 1 | grep -n 2

Manipulácia so zoznamom súborov a adresárov

Čo robiť, keď máte do činenia s adresárom, v ktorom je TONS súborov? Je dosť nepríjemné listovať celým zoznamom. Iste, prečo to neurobiť s potrubím znesiteľnejším? V tomto príklade sa pozrime na zoznam všetkých súborov v priečinku „/ usr / bin“.

ls -l | viac

Tu „ls“ vytlačí všetky súbory a ich informácie. Potom slovo „fajka“ odovzdá slovo „viac“, aby s tým mohol pracovať. Ak ste to nevedeli, „more“ je nástroj, ktorý premieňa texty na jedno zobrazenie súčasne. Je to však starý nástroj a podľa oficiálnej dokumentácie sa viac odporúča „menej“.

ls -l / usr / bin | menej

Výstup triedenia

Je tu zabudovaný nástroj na triedenie, ktorý prevezme zadávanie textu a triedi ich. Tento nástroj je skutočným klenotom, ak pracujete s niečím skutočne chaotickým. Napríklad som dostal tento súbor plný náhodných reťazcov.

ukážka mačky.TXT

Stačí to potrubím „roztriediť“.

ukážka mačky.txt | triediť

To je lepšie!

Tlač zápasov konkrétneho vzoru

ls -l | Nájsť ./ -typ f -name "*.txt "-exec grep 00110011 \;

Toto je pekne skrútený príkaz, že? Najskôr „ls“ vypíše zoznam všetkých súborov v adresári. Nástroj „nájsť“ vezme výstup, vyhľadá „.txt ”súbory a predvolanie„ grep “na vyhľadanie„ 00110011 “. Tento príkaz skontroluje každý jeden textový súbor v adresári s príponou TXT a vyhľadá zhody.

Vytlačte obsah súboru konkrétneho rozsahu

Ak pracujete s veľkým súborom, je bežné, že musíte skontrolovať obsah určitého rozsahu. To dokážeme pomocou šikovného komba „mačka“, „hlava“, „chvost“ a samozrejme „fajka“. Nástroj „head“ vydáva prvú časť obsahu a „chvost“ výstupnú časť.

kat | hlava -6

kat | chvost -6

Jedinečné hodnoty

Pri práci s duplicitnými výstupmi to môže byť pekne nepríjemné. Niekedy môže duplicitný vstup spôsobiť vážne problémy. V tomto príklade vložíme „uniq“ na prúd textu a uložíme ho do samostatného súboru.

Napríklad tu je textový súbor obsahujúci veľký zoznam čísel, ktoré majú 2 číslice. Tu určite existuje duplicitný obsah, že?

duplikát mačky.txt | triediť

Teraz vykonajme proces filtrovania.

duplikát mačky.txt | triediť | uniq> jedinečný.TXT

Skontrolujte výstup.

netopier jedinečný.TXT

Vyzerá lepšie!

Chybné potrubia

Toto je zaujímavá metóda potrubia. Táto metóda sa používa na presmerovanie STDERR na STDOUT a pokračovanie v potrubí. Toto je označené symbolom „| &“ (bez úvodzoviek). Napríklad vytvorme chybu a pošleme výstup do iného nástroja. V tomto príklade som práve napísal náhodný príkaz a chybu odovzdal „grep“.

adsfds | & grep n

Záverečné myšlienky

Aj keď je „potrubie“ samo o sebe dosť zjednodušujúce, spôsob jeho fungovania ponúka veľmi všestranný spôsob využitia tejto metódy nekonečným spôsobom. Ak sa venujete skriptovaniu v jazyku Bash, potom je to oveľa užitočnejšie. Niekedy môžete jednoducho robiť úplne šialené veci! Získajte viac informácií o skriptovaní Bash.

Hry Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
OpenRA je herný engine Libre / Free Real Time Strategy, ktorý obnovuje rané hry z Westwoodu, ako napríklad klasické Command & Conquer: Red Alert. Dist...
Hry Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Emulátor Dolphin vám umožní hrať vybrané hry Gamecube a Wii na osobných počítačoch Linux (PC). Emulátor Dolphin, ktorý je voľne dostupným emulátorom ...
Hry Ako používať GameConqueror Cheat Engine v Linuxe
Ako používať GameConqueror Cheat Engine v Linuxe
Tento článok obsahuje sprievodcu používaním cheatovacieho modulu GameConqueror v systéme Linux. Mnoho používateľov, ktorí hrajú hry v systéme Windows,...