Linuxi käsud

Linuxi toru käsk

Linuxi toru käsk
See "pipe" käsk on UNIX / Linuxi platvormidel hõlpsasti saadaval. See käsk suunab eelmise käsu väljundi järgmise käsu juurde. On sõna otseses mõttes TONNI olukordi, kus see meetod pakub tõsist väärtust.Enne sügavamale hüppamist on midagi teada. Igal UNIX / Linuxi süsteemis on 3 sisseehitatud andmevoogu.

Kui hakkame töötama "toru" trikkidega, võtab "toru" käsu STDOUT ja edastab selle järgmise käsu STDIN-ile.

Vaatame üle mõned levinumad viisid, kuidas saate käsku "pipe" oma igapäevaseks kasutamiseks lisada.

Toru käsk

Põhikasutus

Parem on toru töömeetodit täpsustada elava näitega, eks? Alustame. Järgmine käsk ütleb Archi ja kõigi Archi-põhiste distrode vaikepaketi haldurile “pacman”, et see printiks välja kõik süsteemi installitud paketid.

pacman -Qqe

See on tõesti PIKK pakettide nimekiri. Kuidas oleks, kui võtaksite ainult mõned komponendid? Me võiksime kasutada "grep". Aga kuidas? Üks võimalus oleks väljundi ajutisse faili visata, "grep" soovitud väljundisse ja fail kustutada. Selle seeria ülesandeid saab iseenesest muuta skriptiks. Kuid me skriptime ainult väga suuri asju. Selle ülesande jaoks kasutame toru jõudu!

pacman -Qqe | grep

Äge, kas pole? „|” märk on kõne käsule “pipe”. See haarab STDOUTi vasakust sektsioonist ja suunab selle parema sektsiooni STDIN-i.

Ülalmainitud näites edastas käsk “pipe” väljundi osa “grep” lõpus. Nii mängib see välja.

pacman -Qqe> ~ / Töölaud / pacman_pakett.txt
grep python ~ / töölaud / pacman_package.txt

Mitu torustikku

Põhimõtteliselt pole toru käsu täiustatud kasutamisel midagi erilist. Kuidas seda kasutada, sõltub täielikult sinust.

Alustame näiteks mitme torustiku virnastamisest.

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

Pacmani käsu väljund filtreeritakse järjest edasi torustike abil "grep" abil.

Mõnikord võib faili sisuga töötades olla see tõesti väga suur. Soovitud sissekande õige koha väljaselgitamine võib olla keeruline. Otsime üles kõik kirjed, mis sisaldavad numbreid 1 ja 2.

kassi demo.txt | grep -n 1 | grep -n 2

Failide ja kataloogide loendi manipuleerimine

Mida teha, kui tegelete kataloogiga, milles on TONS faili? Kogu loendi sirvimine on üsna tüütu. Muidugi, miks mitte muuta see toruga paremini talutavaks? Selles näites tutvume kõigi kaustas "/ usr / bin" olevate failide loendiga.

ls -l | rohkem

Siin prindib “ls” kõik failid ja nende andmed. Seejärel annab „toru“ selle edasi töötamiseks „rohkemale“. Kui te ei teadnud, on „rohkem” tööriist, mis muudab tekstid korraga üheks ekraanivaateliseks vaateks. Kuid see on vana tööriist ja ametliku dokumentatsiooni kohaselt on soovitatav pigem "vähem".

ls -l / usr / bin | vähem

Väljundi sortimine

Seal on sisseehitatud tööriist “sort”, mis võtab tekstisisestuse ja sorteerib need. See tööriist on tõeline pärl, kui töötate millegi tõeliselt räpase asjaga. Näiteks sain selle faili täis suvalisi stringe.

kassi demo.txt

Lihtsalt torustage see "sortimiseks".

kassi demo.txt | sorteerida

See on parem!

Kindla mustri vastete printimine

ls -l | leidma ./ -tüüp f -nimi "*.txt "-exec grep 00110011 \;

See on päris keerutatud käsk, eks? Alguses väljastab “ls” kataloogis kõigi failide loendi. Tööriist „Leia” võtab väljundi, otsib.txt ”failid ja kutsub“ grep ”otsima“ 00110011 ”. See käsk kontrollib kõiki TXT laiendiga kataloogis olevaid tekstifaile ja otsib vasteid.

Kindla vahemiku failisisu printimine

Kui töötate suure failiga, on tavaline vajadus kontrollida teatud vahemiku sisu. Saame seda teha nutika kombinatsiooniga “kass”, “pea”, “saba” ja muidugi “toru”. Tööriist “pea” väljastab sisu esimese osa ja “saba” viimase osa.

kass | pea -6

kass | saba -6

Ainulaadsed väärtused

Duplikaatväljunditega töötades võib see olla üsna tüütu. Mõnikord võib topeltsisend põhjustada tõsiseid probleeme. Selles näites heidame tekstivoole “uniq” ja salvestame selle eraldi faili.

Näiteks on siin tekstifail, mis sisaldab suurt loendit numbritest, mis on 2-kohalised. Siin on kindlasti dubleeritud sisu, eks?

kassi duplikaat.txt | sorteerida

Nüüd teeme filtreerimisprotsessi.

kassi duplikaat.txt | sorteeri | uniq> ainulaadne.txt

Kontrollige väljundit.

nahkhiir ainulaadne.txt

Näeb parem välja!

Veatorud

See on huvitav torustikumeetod. Seda meetodit kasutatakse STDERR-i suunamiseks STDOUT-i ja jätkatakse torustikuga. Seda tähistatakse sümboliga "| &" (jutumärkideta). Näiteks loome vea ja saadame väljund mõnele muule tööriistale. Selles näites sisestasin lihtsalt juhusliku käsu ja andsin vea edasi "grep".

adsfds | & grep n

Lõpumõtted

Kui toru ise on oma olemuselt üsna lihtsustatud, pakub see tööviisil väga mitmekülgset viisi meetodi lõpmatuks kasutamiseks. Kui tegelete Bashi skriptimisega, on see palju kasulikum. Mõnikord saate lihtsalt pööraseid asju otse teha! Lisateave Bashi skriptimise kohta.

Kuidas näidata FPS-loendurit Linuxi mängudes
Linuxi mängimine sai suure tõuke, kui Valve teatas Steam-kliendi ja nende mängude Linuxi toest 2012. aastal. Sellest ajast peale on paljud AAA- ja ind...
Sid Meieri Civilization VI allalaadimine ja mängimine Linuxis
Sissejuhatus mängu Civilization 6 on kaasaegne kontseptsioon, mis tutvustati Age of Empires mängude sarjas. Idee oli üsna lihtne; alustaksite kõige põ...
Kuidas installida ja mängida Doomi Linuxis
Doomi sissejuhatus Doom-seeria sai alguse 90ndatel pärast algse Doomi väljaandmist. See oli kohene hitt ja sellest ajast alates on mänguseeria pälvinu...