Átirányítás a linux IO

Miután szerver biztonságos adatközpontok Európában. Nyílt felhő VPS / VDS szerver egy gyors SSD 1 perc alatt!

A legjobb Web Hosting:
- megvédi az illetéktelen hozzáférés egy biztonságos európai adatközpont
- fizet legalább Bitcoin.
- Akkor tegye meg a disztribúciós

- védelmet DDOS támadások
- ingyenes biztonsági mentés
- Üzemidő 99,9999%
- DPC - TIER III
- ISP - TIER I

Támogatás az orosz 24/7/365 dolgozni a jogi és fizikai személyek. Most kell 24 mag és 72 Gb RAM. Kérlek!

A versenyképes áron bizonyítani, hogy a legolcsóbb hosting, ha nem tudja!

A percek alatt, válassza ki a konfiguráció, a fizetés és a CMS egy VPS kész.
Pénzvisszafizetési - 30 nap alatt!

Bankkártyák, elektronikus valuta révén Qiwi terminálok, WebMoney, PayPal, Novoplat és mások.

Tegye fel kérdését támogatás 24/7/365

Megtalálja a választ az adatbázisunkban, és megfelel az ajánlásokat a

Linuxra épülő átirányítás képességek az Ön számára egy sor eszközt felhasznált, hogy egyszerűsítse mindenféle feladatokat. Képes kezelni a különböző bemeneti és kimeneti adatfolyamok jelentősen növeli a termelékenységet, mind a fejlesztés komplex szoftver és a menedzsment a fájlokat a parancssorban.

Streams IO

A bemeneti és kimeneti a Linux környezetben között oszlik három áram:

  • Átlagos bemeneti (szabványos bemenet, stdin, adatfolyam száma 0)
  • A szabványos kimenet (standard kimenetre, stdout, 1-es szám)
  • A standard hiba vagy diagnosztikai áramlás (standard hiba, stderr, szám 2)

Amikor egy felhasználó rákattint a terminál szabványos bemenetet áthalad a felhasználó a billentyűzeten. Szabványos kimenet, hiba jelenik meg a felhasználói terminál formájában szöveget. Mindhárom patakok nevezik a standard patakok.

Normál beviteli

Szabványos bemeneti általában továbbítja az adatokat a felhasználó számára, hogy a program. Programok, mely magában foglalja a szabványos bemenet, általában nyert a bemeneti eszköz (például, a billentyűzet). Szabványos bemeneti megszűnik elérése után EOF (end-of-fájl, a fájl vége). EOF jelzi, hogy nincs több adatot olvasni.

Most meg egy pár számot:

Számok és nyomja nyomja meg az Entert, akkor küldje el a standard input egy futó macska program, amely fogadja az adatokat. Az viszont, macska program megjeleníti a kapott bemenetről a szabványos kimenetre.

A felhasználó meghatározhatja EOF, ctrl-d, mely után a program leáll macska.

szabvány out

A szabványos kimenet írja az adatokat a program által generált. Ha a szabványos kimenet nem lett átirányítva, akkor megjeleníti a szöveget a terminálra. Próbálja ki a következő parancsot, mint például:

echo Elküldött, hogy a terminál a szabványos kimenet

Az echo parancs nincs további lehetőségeket jelenít meg a képernyőn minden érvet átadott a parancssorban.

Most fut a visszhang nélkül érvek:

A parancs üres karakterláncot ad vissza.

standard hiba

Ez a szabvány menetes írja hibák által létrehozott program, amely sikertelen volt. Mint standard kimenetre küldi el az adatfolyamot a terminálhoz.

Vegyük példának a flow az ls parancs hibákat. Az ls parancs megjeleníti a könyvtárak tartalmát.

Ha nincs érv, ez a parancs visszaadja a tartalmát az aktuális könyvtárban. Ha megad érvként ls könyvtár nevét, a parancs tartalmát adja vissza.

Mivel a% nem létezik, a parancs visszatér a standard hiba:

ls: nem lehet elérni%: Nincs ilyen fájl vagy könyvtár

átirányítása patakok

A Linux speciális parancsok átirányítani minden patak. Ezek a parancsok vannak írva a szabványos kimenetét egy fájlba. Ha a kimenet átirányítható egy nem létező fájl, a parancs létrehoz egy új fájlt ugyanazzal a névvel és menti azt a kimenet átirányítás.

Csapatok a másik irányból konzol felülírja a létező cél fájl tartalma:

  • > - szabványos kimenet
  • <— стандартный ввод
  • 2> - standard hiba

Csapatok kettős hegyes zárójelek nem írja felül a tartalmát a cél file:

  • >> - a standard kimenet
  • <<— стандартный ввод
  • >> 2 - standard hiba

Tekintsük a következő példát:

cat> write_to_me.txt
egy
b
c
CTRL-D

Ebben a példában cat parancs a levelet a kimenő adatok egy fájlba.

A parancs vissza kell:

Ismét átirányítani macska write_to_me.txt fájlt, és adja meg a három számjegyből áll.

cat> write_to_me.txt
1
2
3
CTRL-D

Most ellenőrizze a fájl tartalmát.

A parancs vissza kell:

Mint látható, a fájl csak az utolsó kimenet, mint egy csapat, átirányítja a teljesítmény volt egy hegyes zárójel.

Most próbálja meg futtatni ugyanazt a parancsot két hegyes zárójelek:

macska >> write_to_me.txt
egy
b
c
CTRL-D

Csapatok kettős hegyes zárójelek nem írja felül a meglévő tartalmat, de kiegészítheti azt.

Szállítószalag (csövek) irányítsa át a kimeneti stream egy parancsot a bemenetét egy másik. A továbbított adatok a második program által nem jelennek meg a terminál. A képernyő módosítások megjelennek csak a feldolgozás után a második program.

Szállító Linux bemutat egy függőleges sáv.

Ez a parancs megadja azt a következtetést ls (a tartalmát az aktuális könyvtárba) program kevésbé, amely megjeleníti az adatokat átadott sorban. Általános szabály, hogy az ls felsorolja a könyvtárak tartalmát egy sorban nélkül összeomlik a vonalon. Ha kimenetét átirányítjuk ls kevesebb, az utolsó parancs szét a kimeneti vonalakra.

Mint látható, a szállítószalag kimenete átirányítható egy parancs bemenetére a másik, szemben a> és >> hogy az átutalási adatokat csak a fájlokat.

Szűrők - egy csapat, amely képes megváltoztatni, és átirányítja a kimeneti szállítószalag.

Megjegyzés. Szűrők ugyancsak szabványos Linux parancsok nélkül is használható egy szállítószalag.

  • Keresés - a fájl nevét.
  • grep - megkeresi a szöveget egy előre meghatározott mintát.
  • tee - átirányítja szabványos bemenetről a szabványos kimenetre, és egy vagy több fájlt.
  • tr - keresés és csere húrok.
  • wc - számít karakterek, vonalak és szavakat.

Példák input-output átirányítása

Most, hogy már ismeri az alapvető fogalmak és áttétel, úgy néhány alapvető példát azok használatát.

parancs> fájl

Ez a sablon átirányítja a szabványos kimenetet egy fájlba.

Ez a parancs a jeltovábbítás a gyökér könyvtárat a rendszer, mint a szabványos kimenetre, majd írja a kimeneti fájlba root_dir_contents. Ez törli az összes korábbi tartalom a fájlban, mivel az egyik hegyes zárójel használt a csapat.

parancs> / dev / null

/ Dev / null - egy különleges fájl (az úgynevezett „null eszköz”), amelyet elnyomni a standard kimenet vagy diagnózis elkerülése érdekében kívánatos kimenet a konzolra. Minden adat megadása a / dev / null, reset. Átirányítás a / dev / null általánosan használt shell script.

A parancs visszaállítja a normál kimeneti stream vissza ls parancs átadva a / dev / null.

parancs 2> file

Ez a sablon átirányítja a standard hiba patak a parancs egy fájlt, felülírva az aktuális tartalmát.

mkdir '' 2> mkdir_log.txt

Ez a parancs fogja átirányítani okozott hiba érvénytelen könyvtár nevét, és írja rá a log.txt. Megjegyzés: Egy hiba továbbra is a terminálon.

parancs >> fájl

Ez a sablon átirányítja a szabványos kimenete parancs fájl felülírása nélkül a jelenlegi fájl tartalmát.

echo írásbeli új fájlba> data.txt
echo csatolt egy meglévő fájl tartalmát >> data.txt

Ez a pár parancs első átirányítja a felhasználó által beírt szöveget egy új fájlt, majd beilleszti azt egy létező fájl felülírása nélkül annak tartalmát.

2. csapat >> fájl

Ez a sablon átirányítja a standard hiba patak a parancsot egy fájl felülírása nélkül a meglévő fájl tartalmát. Ez alkalmas létrehozása egy program vagy szolgáltatás naplók hibák, mint a napló tartalma nem frissül folyamatosan.

találni '' 2> stderr_log.txt
wc '2 >> stderr_log.txt

A fenti parancs átirányítja a hiba által okozott érvénytelen argumentum lelet, a stderr_log.txt fájlt, majd hozzáteszi, a hiba által okozott érvénytelen argumentum wc.

A csapat | csapat

find / var lib | grep deb

Ez a parancs úgy néz ki, a / var és alkönyvtárainak fájlnevek és bővítmények deb és visszaadja a fájl elérési útvonalát, válassza ki a keresési mintát piros.

A csapat | tee fájl

Ez a sablon átirányítja a standard kimenetet egy fájlba, és felülírja a tartalmát, majd megjeleníti az átirányított kimenet a terminálon. Ha a megadott fájl nem létezik, akkor létrehoz egy új fájlt.

wc / etc / magic | tee magic_count.txt

Ez a parancs átviszi a karakterek száma, sorok és szavak a mágikus fájl (Linux használja, hogy meghatározza a fájl típus) csapat póló, amely elküldi az adatokat a terminál és magic_count.txt fájlt.

A csapat | A csapat | parancs >> fájl

Ez a sablon átirányítja a stdout az első parancs, és szűri át a következő két parancsot, majd hozzáadja a végeredmény egy fájlba.

| grep * tar | tr e E >> ls_log.txt

Ez a parancs elküldi a kimeneti ls a könyvtárban gyökér grep parancsot. Az viszont, grep keresések az adatokat tar fájlokat. Ezt követően, az eredmény vezetjük tr grep parancs, amely felváltja az összes karakter, azaz a szimbólum E. Az eredmény bekerül a ls_log.txt fájlt (ha a fájl nem létezik, akkor a parancs létrehoz automatikusan).

következtetés

Átirányítás funkció Linux IO először tűnik túl nehéz. Azonban dolgozni átirányítása - az egyik legfontosabb készség a rendszergazda.

Ha szeretne többet megtudni egy adott parancs használja:

man parancs | kevesebb

Ez a parancs visszatér a parancsok teljes listáját a pólót.

Kapcsolódó cikkek