Komandų grandinės operatoriai yra specialūs simboliai, naudojami rašant miniatiūrinius apvalkalo scenarijus komandinėje eilutėje. Paprastai jie naudojami komandoms vykdyti tam tikra seka, apibrėžta operatorių išdėstymu tarp komandų. Tai nepaprastai naudinga automatizuojant užduotis.

Sužinokime apie kelis įprastus „Linux“ operatorius, kurie gali padėti atlikti užduotis greičiau ir naudojant trumpesnius naudotojų intervalus.

1. „Ampersand“ operatorius (&)

Dažnai, kai atidarote programą arba vykdote komandą iš apvalkalo, turite arba palaukti, kol komanda baigsis, arba rankiniu būdu išeiti iš programos, kad galėtumėte toliau naudoti apvalkalą. Štai čia pradeda veikti ampersando operatorius (&).

Prie bet kurios komandos pridėję ampersand operatorių, diktuojate apvalkalą Vykdykite tą Linux komandą fone kad galėtumėte toliau naudoti apvalkalą neprisirišę.

gedit &

Paprastai, jei paleisite gedit iš terminalo, negalėsite naudotis terminalu, nebent uždarysite teksto rengyklę. Tačiau pridėję ampersand operatorių, galite priversti jį veikti fone ir nedelsdami toliau naudoti apvalkalą.

instagram viewer

2. Kabliataškio operatorius (;)

Kabliataškio operatorius yra neįtikėtinai naudingas „Linux“ grandinės operatorius, kurį galite naudoti komandoms vykdyti nustatyta, nuoseklia tvarka. Užsakykite komandas ir atskirkite jas kabliataškiais.

pwd; mkdir bandymas; cdbandymas; liesti failą

Aukščiau pateikta sintaksė diktuoja apvalkalą vykdyti kiekvieną komandą vieną po kitos. Atminkite, kad apvalkalas netikrina, ar kiekviena komanda sėkmingai baigiama. Kai tik apvalkalas gauna grąžinimo kodą, jis pereina prie kitos komandos vykdymo.

3. AR operatorius (||)

ARBA operatorius vykdys sekančią komandą tik tuo atveju, jei ankstesnė komanda nepavyks, t. y. grąžins išėjimo kodą 0. Jis veikia kaip loginiai ARBA vartai, kurie grąžina 1 reikšmę, kai įvestis yra 0.

bad_command || ls

Šiame pavyzdyje sintaksė bloga_komanda yra klaidinga komanda, kurios nepavyks įvykdyti, o kadangi ji nepavyksta, komanda, sekanti ARBA operatorių, kuri yra ls komanda, bus sėkmingai įvykdytas.

4. Vamzdžių operatorius (|)

Vamzdžių operatorius nukreipia ankstesnės komandos išvestį kaip įvestį į sekančią komandą. Jis dažniausiai naudojamas duomenims filtruoti naudojant grep komandą.

kačių testas | grep -i "pasinaudoti"

Ši komanda siunčia išvestį katės komanda kaip grep komandos įvestis, kuri tada filtruoja išvestį pagal nurodytą eilutę.

5. IR operatorius (&&)

Šis operatorius veikia panašiai kaip kabliataškio operatorius, išskyrus, skirtingai nei kabliataškio operatorius, AND operatorius vykdys komandas tik tuo atveju, jei ankstesnė komanda buvo sėkmingai įvykdyta.

pwd && mkdir testas && cd testas && bloga_komanda && ls

Šiame sintaksės pavyzdyje apvalkalas sėkmingai vykdys visas komandas iki bloga_komanda. Tačiau kadangi bad_command nepavyksta paleisti, apvalkalas grąžins klaidą ir praleis komandą ls.

6. NE operatorius (!)

Operatorius NOT veikia panašiai kaip teiginys išskyrus programuojant. Pavyzdžiui, jei norite atlikti operaciją su daugybe failų kataloge, bet norite neįtraukti a nedaug, remiantis kokiu nors parametru, tada galite naudoti operatorių NOT, perduodami parametrą po simbolio NOT (!).

rm-r !(*.txt)

Ši pavyzdinė komanda rekursyviai pašalins visus failus iš katalogo, išskyrus tuos, kurie turi ".txt“ pratęsimas.

7. Pirmenybės operatorius ((..))

Komandos, einančios po operatorių AND ir OR, priklauso nuo ankstesnės komandos išėjimo kodo. Šie operatoriai yra dvejetainiai ir įvertina tik dvi komandas, kurios pateikiamos prieš ir po jų.

Taigi dirbant su keliais operatoriais svarbu nustatyti grupes ir pirmenybę, kad vykdymo seka atitiktų jūsų lūkesčius.

(ls *.txt > txt-files.list && cp *.tx ~) && (ls *.deb > deb-packages.list && cp *.deb ~) || aidas "Pirmenybės testas!"

Šioje pavyzdinėje sintaksėje abi komandų grupės turi grąžinti išėjimo kodą 0, kad būtų užtikrintas sėkmingas paskutinės komandos vykdymas. Šiame pavyzdyje reikalaujama, kad abi pirmojo rinkinio () komandos išeitų su 0, kad būtų paleistas antrasis rinkinys ().

8. Kombinuotas operatorius ({..})

Kaip rodo pavadinimas, kombinacijos operatorius naudojamas komandoms grupuoti. Kad ir kurias komandas norite sugrupuoti, galite jas įdėti į riestinius skliaustus ir jos bus vykdomos priklausomai nuo pirmosios komandos išėjimo kodo.

test -f /etc/passwd && {pwd; data} && echo $0; aidas "Sveiki"

Pavyzdinė sintaksė patikrins, ar /etc/passwd failą yra, išspausdinkite esamą darbo katalogą, datą, apvalkalo pavadinimą ir atkartokite „Labas“.

9. Sujungimas arba pabėgimo operatorius (\)

Sujungimo arba pabėgimo operatorius turi dvi funkcijas. Galite naudoti jį dviem komandoms sujungti arba kaip pabėgimo simbolį, kai dirbate su eilėmis apvalkale.

mkdir test0 test1 \ test2
echo "Sveiki! į
Kita pusė"

Pirmoji komanda sukurs keturis katalogus pavadinimu test0–test2, o antroji komanda išspausdins eilutę, atskirtą nauja eilute.

10. Peradresavimo operatoriai (>, >>,

Peradresavimo operatoriai nukreipia išvestį arba įvestį į failą perrašydami failą arba pridėdami prie jo. Jei norite perrašyti failą, turite naudoti vieno kampinio skliausto (>) sintaksę. Jei norite pridėti prie failo, turėsite naudoti dvigubo kampinio skliausto sintaksę (>>).

aidas "dsd"> bandymas; aidas "bssss">> bandymas

Pavyzdinėje sintaksėje pirmoji komanda perrašys „testo“ failą pateikta eilute, bet antroje komandoje pateikta eilutė bus pridėta prie bandomojo failo.

Paspartinkite „Linux“ terminalo darbo eigą

Nors specialių operatorių naudojimas žymiai supaprastins užduočių vykdymą, yra keletas kitų būdų, kaip pagreitinti darbo eigą.

Vienas paprastas ir naudingas būdas nuveikti daugiau per trumpesnį laiką – susipažinti su keletu patogių apvalkalo nuorodų. Pripratę prie šių sparčiųjų klavišų bus labai daug, ir jūs pasikliausite jais tol, kol naudosite Linux.