Operatorji za veriženje ukazov so posebni znaki, ki se uporabljajo za pisanje miniaturnih lupinskih skriptov v ukazni vrstici. Na splošno se uporabljajo za izvajanje ukazov v določenem zaporedju, ki ga določa postavitev operatorjev med ukazi. To je neverjetno uporabno pri avtomatizaciji opravil.

Spoznajmo nekaj običajnih verižnih operaterjev v Linuxu, ki vam lahko pomagajo dokončati naloge hitreje in z krajšimi uporabniškimi intervali.

1. Operator ampersand (&)

Ko odprete program ali izvedete ukaz iz lupine, morate pogosto počakati, da se ukaz konča, ali ročno zapustiti program, preden lahko nadaljujete z uporabo lupine. Tukaj nastopi operator ampersand (&).

Če kateremu koli ukazu dodate operator &, narekujete lupino izvrši ta ukaz Linuxa v ozadju tako da lahko lupino še naprej uporabljate nevezano.

gedit &

Običajno, če zaženete gedit s terminala, terminala ne boste mogli uporabljati, razen če zaprete urejevalnik besedil. Če pa dodate operator &, lahko omogočite, da deluje v ozadju in takoj nadaljuje z uporabo lupine.

instagram viewer

2. Operator podpičja (;)

Operator podpičje je neverjetno uporaben verižni operater Linuxa, ki ga lahko uporabite za izvajanje ukazov v določenem zaporednem vrstnem redu. Uredite svoje ukaze in jih ločite s podpičji.

pwd; mkdir test; cdtest; datoteka na dotik

Zgornja sintaksa ukazni lupini narekuje, da izvede vsak ukaz enega za drugim. Upoštevajte, da ukazna lupina ne preveri, ali se vsak ukaz uspešno zaključi. Takoj, ko lupina prejme povratno kodo, se premakne na izvajanje naslednjega ukaza.

3. Operator ALI (||)

Operator ALI bo izvedel ukaz, ki sledi, le če prejšnji ukaz ne uspe, tj. vrne izhodno kodo 0. Deluje kot logična vrata ALI, ki vrnejo vrednost 1, ko je vnos 0.

slab_ukaz || ls

V tej sintaksi primera slab_ukaz je napačen ukaz, ki ga ne bo mogoče izvesti, in ker ne uspe, ukaz nasledi operator OR, ki je ukaz ls, se bo uspešno izvedla.

4. Cevni operater (|)

Operater cevi usmeri izhod predhodnega ukaza kot vhod v naslednji ukaz. Najpogosteje se uporablja za filtriranje podatkov z ukazom grep.

mačji test | grep -i "izkoristijo"

Ta ukaz pošlje izhod mačji ukaz kot vhod za ukaz grep, ki nato filtrira izhod glede na določen niz.

5. Operator IN (&&)

Ta operator deluje na podoben način kot operator podpičje, le da bo operator IN za razliko od operatorja podpičja izvajal ukaze le, če je bil predhodni ukaz uspešno izveden.

pwd && mkdir test && cd test && slab_ukaz && ls

V tej sintaksi primera bo lupina uspešno izvedla vse ukaze do slab_ukaz. Ker pa se bad_command ne zažene, bo lupina vrnila napako in preskočila ukaz ls.

6. Operater NOT (!)

Operator NOT deluje podobno kot stavek razen v programiranju. Na primer, če želite izvesti operacijo na velikem številu datotek v imeniku, vendar želite izključiti a nekaj na podlagi nekega parametra, potem lahko uporabite operator NOT tako, da podate parameter za znakom NOT (!).

rm-r !(*.txt)

Ta vzorčni ukaz bo rekurzivno odstranil vse datoteke v imeniku, razen datotek, ki imajo ".txt" razširitev.

7. Operator prednosti ((..))

Ukazi, ki sledijo operatorjema IN in ALI, so odvisni od izhodne kode prejšnjega ukaza. Ti operatorji so binarni in ovrednotijo ​​samo dva ukaza, ki sta pred in za njima.

Ko delate z več operaterji, je pomembno, da nastavite skupine in prednost, da zagotovite, da zaporedje izvajanja ustreza vašim pričakovanjem.

(ls *.txt > txt-files.list && cp *.tx ~) && (ls *.deb > deb-packages.list && cp *.deb ~) || odmev "Test prednosti!"

V tej vzorčni sintaksi morata obe skupini ukazov vrniti izhodno kodo 0, da zagotovita uspešno izvedbo zadnjega ukaza. Ta primer zahteva, da se oba ukaza v prvem nizu () končata z 0, da se lahko izvaja drugi niz ().

8. Kombinacijski operator ({..})

Kot namiguje ime, se kombinirani operator uporablja za združevanje ukazov. Ne glede na ukaze, ki jih želite združiti, jih lahko postavite v zavite oklepaje in bodo izvedeni glede na izhodno kodo prvega ukaza.

test -f /etc/passwd && {pwd; datum} && echo $0; odmev "zdravo"

Vzorčna sintaksa bo preizkusila, če datoteko /etc/passwd je prisoten, natisne trenutni delovni imenik, datum, ime lupine in odmeva "Hello".

9. Povezovalni ali ubežni operator (\)

Operator veriženja ali escape ima dve funkciji. Uporabite ga lahko za združevanje dveh ukazov ali kot ubežni znak pri delu z nizi v lupini.

mkdir test0 test1 \ test2
odmev "Pozdravljeni! od the
druga stran"

Prvi ukaz bo ustvaril štiri imenike z imenom test0 do test2, drugi ukaz pa bo natisnil niz, ločen z novo vrstico.

10. Operatorji preusmeritve (>, >>,

Operatorji preusmeritve preusmerijo izhod ali vnos v datoteko s ponovnim pisanjem datoteke ali z dodajanjem k njej. Če želite znova napisati datoteko, morate uporabiti sintakso enojnega kotnega oklepaja (>). Če želite pripeti datoteki, boste morali uporabiti sintakso dvojnega kotnega oklepaja (>>).

odmev "dsd"> test; odmev "bssss">> test

V vzorčni sintaksi bo prvi ukaz prepisal "testno" datoteko s podanim nizom, v drugem ukazu pa bo navedeni niz pripet testni datoteki.

Pospešite potek dela vašega terminala Linux

Medtem ko bo uporaba posebnih operaterjev znatno poenostavila izvajanje nalog, obstaja več drugih načinov za pospešitev vašega poteka dela.

Eden od preprostih in vrednih načinov, da naredite več v krajšem času, je, da se seznanite z nekaj priročnimi bližnjicami lupine. Navaditi se na te bližnjice bo šlo zelo daleč in ugotovili boste, da se boste zanašali nanje, dokler uporabljate Linux.