12.07.2013 Views

jegyzet gyomlált változata - Eötvös Loránd Tudományegyetem

jegyzet gyomlált változata - Eötvös Loránd Tudományegyetem

jegyzet gyomlált változata - Eötvös Loránd Tudományegyetem

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Az átirányítás lehetővé teszi, hogy egy program végeredményét egy másik program<br />

bemenetként használja, külön állomány létrehozása nélkül. Egy parancssorban több<br />

átirányítást is használhatunk, pl. az első utasítás a bemenetét egy megadott állományból<br />

veszi, majd a második parancs az első kimenetét (eredményét) dolgozza fel, végül a<br />

harmadik a második kimenetét továbbalakítva a végeredményt egy kimeneti állományba<br />

írja. Mindez nagy közbülső állományok létrehozása nélkül történik, ezért sokkal gyorsabb<br />

a parancsok egyenkénti futtatásánál.<br />

9.5.1. Parancs kimenetének átirányítása<br />

Egy program végeredményét egy állományba is beleírhatjuk a képernyő helyett. Ehhez<br />

a parancs után egy > jelet, majd a kívánt fájl nevét kell írnunk. Például a<br />

$ ls -l > filelista<br />

$ cat filelista<br />

parancsok hatására az ls parancs kimenet egy filelista nevű állományba kerül, amit aztán<br />

a cat parancs segítségével írunk a képernyőre.<br />

Az átirányítás felülírja a már létező állományt. Ha ehelyett az állomány végéhez<br />

akarjuk az eredményt fűzni, akkor a >> jelet kell használnunk. A shell ekkor ellenőrzi,<br />

hogy létezik-e a megadott nevű fájl. Ha igen, akkor a végéhez fűzi az új adatokat, ha<br />

pedig nem létezik a fájl, akkor létrehozza azt. Az előző példát folytatva:<br />

$ ls > filelista<br />

$ ls -l >> filelista<br />

Az első ls felülírja a fájllistát, míg az ls -l a végéhez fűzi a részletes állománylistát.<br />

9.5.2. A cső (pipe) használata<br />

A Linuxban lehetőség van arra, hogy közbülső fájl létrehozása nélkül kapcsoljunk össze<br />

két (vagy több) programot. Ilyenkor az első program kimenete a második bemenete<br />

lesz. A két összekötni kívánt programot az ún. pipe jellel (ez a |) kell a parancssorban<br />

elválasztani. Egyszerre több parancsot is összekapcsolhatunk a | jellel, ezt pipeline-nak<br />

(csővezeték) nevezzük.<br />

Példaként listázzuk ki a /bin könyvtár tartalmát az ls parancs segítségével és a könyvtárban<br />

lévő fájlok számát a wc segítségével megjelenítjük a képernyőn:<br />

$ ls -l /bin | wc -l<br />

114

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!