Ero sivun ”Nimetty putki” versioiden välillä

Siirry navigaatioon Siirry hakuun
1 749 merkkiä lisätty ,  26. lokakuuta 2008
Kumottu muokkaus #23480, jonka teki ARTTUSN WIHOWIIMEINEN MARSSI TÄYTIN TOIVEENNE PÄÄSETTE NYT EROON MUSTA!!!!!!!! ([[User talk:ARTTUSN WIH
(Ak: Sivun sisältö korvattiin sisällöllä ”HYVÄSTI NUSSIJAT”)
(Kumottu muokkaus #23480, jonka teki ARTTUSN WIHOWIIMEINEN MARSSI TÄYTIN TOIVEENNE PÄÄSETTE NYT EROON MUSTA!!!!!!!! ([[User talk:ARTTUSN WIH)
Rivi 1: Rivi 1:
HYVÄSTI NUSSIJAT
Nimetty putki eli FIFO ("First In, First Out") on tiedostojärjestelmään luotu pysyvä erikoistiedosto, jota käytetään eri prosessien väliseen [[standardivirrat|kommunikointiin]]. Nimettyyn putkeen voivat eri aikoihin tai samanaikaisesti lukea ja kirjoittaa eri prosessit, kun taas tavalliseen nimeämättömään, tilapäiseen putkeen (esim. [[cat]] tiedosto ''|'' [[less]]) ei voi syöttää ja tulostaa kuin kaksi samanaikaisesti toimivaa prosessia.
 
==Käyttö==
Nimetty putki luodaan komennolla mkfifo, esimerkiksi
mkfifo putki1
Annetaan yhdessä [[virtuaalikonsoli]]ssa komento
[[ls]] -l >putki1
jolla syötetään tiedostolistaus nimettyyn putkeen putki1. Koska mikään prosessi ei vielä lue ls:n putkeen syöttämää dataa, pysähtyy ls:n suoritus automaattisesti odottamaan vastaanottavaa prosessia. Annetaan seuraavaksi toisessa virtuaalikonsolissa komento
cat putki1
joka tulostaa putkesta saamansa datan näytölle. Kun cat on tulostanut putken kautta ls:ltä saamansa syötteen, loppuu molempien prosessien suoritus automaattisesti (EOF).
 
Annetaan komento
[[bzip2]] -c < putki1 > tavara.bz2 &
joka laittaa bzip2:n taustalle "vahtimaan" putki1:stä ja pakkaamaan sieltä tulevan datan tiedostoon tavara.bz2.
 
Kun tämän jälkeen taas ohjataan ls:n tuloste putkeen komennolla
[[ls]] -l >putki1
pakkaa bzip2-prosessi tämän datan ja lopettaa itsensä.
Pakatun tiedoston sisällön voi tarkistaa vaikkapa komennolla
[[bzcat]] tiedosto.bz2
 
Nimetyn putken voi poistaa normaaliin tapaan komennolla
[[rm]] putki1
 
==Katso myös==
*[[Standardivirrat]]
*[[Komentorivin perusteet]]
 
==Aiheesta muualla==
*[http://www2.linuxjournal.com/article/2156 Linux Journalin artikkeli nimetyistä putkista]
 
[[Luokka:Järjestelmä]]
[[Luokka:Komentorivi]]
201

muokkausta

Navigointivalikko