Több parancs futtatása Linux alatt

How Run Multiple Commands Linux



Különféle típusú parancsokra van szükség a Linux terminálról történő futtatásához. Néha több parancsot kell futtatnunk egyszerre, ahol a parancsok függhetnek egymástól vagy sem. Több parancs egyszerre történő futtatását nevezzük parancsláncolásnak. Sokféle operátor használható parancsok láncolására különböző célokra. Ez a bemutató bemutatja, hogyan futtathat két vagy több parancsot a leggyakrabban használt operátorok használatával.

A pipe (|) operátor két vagy több kapcsolódó parancs futtatására szolgál egyszerre. A következő parancs bemenete az előző parancs kimenete lesz. Tehát az egyes parancsok sikere a korábbi parancs nélküli első parancs sikerétől függ. A következő parancsban az első parancs, ls megtudja az aktuális hely fájljainak és mappáinak listáját, és elküldi a kimenetet a második parancs bemeneteként, WC . A bemeneti adatok alapján kinyomtatja a sorok, szavak és karakterek teljes számát.







$ls -az | WC szerencsére



Pontosvessző (;) Operátor

A pontosvessző (;) operátor hozzászokott ahhoz, hogy egyszerre két vagy több független parancsot futtasson. Ez azt jelenti, hogy az egyes parancsok kimenete nem függ más parancsoktól. A következő példában háromféle parancs kombinálódik, és az egyes parancsok meghiúsulása nem lesz hatással a többi parancs kimenetére. Az első parancs kinyomtatja a fájl tartalmát, a második parancs egy könyvtárat hoz létre, a harmadik parancs pedig megváltoztatja az aktuális könyvtárat.



$macskamyfile.txt;mkdirnewdir;CDAsztal





Logikai ÉS (&&) operátor

A Logical AND (&&) által futtatott parancsok kapcsolatban vannak egymással, mint a pipe (|) parancs. Tehát, ha az előző parancs nem lesz sikeres, akkor a következő parancsok nem fognak működni. A következő példában két parancs, az mkdir és az rmdir, amelyeket az && operátorok kombináltak. Tehát az mkdir parancsot nem sikerült végrehajtani, akkor az rmdir parancs nem fog végrehajtódni. Az ls parancs kimenete szerint a myDir könyvtár már létezik az aktuális helyen. Tehát az első parancs nem hajtódik végre, és a második parancs sem.

$ls
$mkdirmyDir&& rmdirhőmérséklet
$ls



Logikai VAGY (||) operátor

A logikai VAGY (||) operátor a logikai ÉS (&&) operátor ellentéte. A következő parancs akkor fog végrehajtódni, ha az előző parancs nem teljesül. A következő példában három macska parancsot kombinálunk az OR (||) operátorral. A parancs futtatásakor először is megpróbálja megjeleníteni a cat.txt fájl tartalmát. Ha nincs ilyen fájl az aktuális helyen, akkor megpróbálja végrehajtani a következő parancsot. A kimenet szerint a bird.txt fájl létezik az aktuális helyen, és a fájl tartalma megjelenik.

$ cat cat.txt || macskakutya.txt || macska madár.txt

Több parancs több operátorral

Több operátor segítségével egyszerre több parancsot futtathat. A következő példában három parancs kombinálódik az OR (||) és az AND (&&) operátorokkal. A parancs futtatása után mindenekelőtt az aktuális könyvtárat newdir -re változtatja, ha a könyvtár létezik. Ha ez a parancs nem sikerül, akkor létrehozza a könyvtárat a második parancs végrehajtásával, és kinyomtatja az üzenetet. A kimenet szerint a newdir könyvtár nem létezik az aktuális helyen. Tehát a hibaüzenet megjelenik, és a könyvtár később jön létre.

$CDnewdir|| mkdirnewdir&& kidobta 'könyvtár létrehozva'

Kombinált operátor {}

Két vagy több parancs kombinálható ezzel az operátorral, és ha az első parancs végrehajtása sikertelen, akkor a második parancs nem hajtódik végre. A következő példában az OR, AND és a kombinált operátorokat együtt használjuk. Az első parancsok ellenőrzik, hogy a temp könyvtár létezik -e az aktuális helyen vagy sem. Ha az első parancs sikertelen, akkor létrehoz egy ideiglenes könyvtárat, és kinyomtat egy üzenetet. Az utolsó parancs megjeleníti az aktuális könyvtárlistát.

$[ -dhőmérséklet] || { mkdirhőmérséklet;kidobtaa temp könyvtár most létrejön .;} && ls

Elsőbbségi operátor ()

Ezt az operátort használhatja a parancsok csoportosítására a végrehajtás idején. Itt minden csoport egyetlen feladatként fog dolgozni. A következő példában két parancscsoportot definiálunk, és ha az első csoport végrehajtása sikertelen, akkor a második csoport hajt végre.

$(CDhőmérséklet&& ls-nak nek) || (mkdirhőmérséklet&& ls)

Következtetés

Ez az oktatóanyag elmagyarázza a Linuxon több parancs futtatásához leggyakrabban használt operátorokat. De sok más operátor létezik a bash -ban, amelyek két vagy több parancs együttes futtatására szolgálnak. Ezek az ampersand (&), átirányítás (, >>), Logical NOT (!), Combination ({}) stb.