Käsuahela operaatorid on erimärgid, mida kasutatakse miniatuursete kestaskriptide kirjutamiseks käsureal. Neid kasutatakse tavaliselt käskude täitmiseks teatud järjestuses, mis on määratletud operaatorite paigutusega käskude vahel. See on ülesannete automatiseerimisel uskumatult kasulik.
Tutvume mõne tavalise aheldatava operaatoriga Linuxis, mis aitavad teil ülesandeid kiiremini ja väiksemate kasutajaintervallidega täita.
1. Ampersandi operaator (&)
Sageli peate programmi avamisel või kestast käsu täitmisel ootama, kuni käsk lõpeb, või käsitsi programmist väljuma, enne kui saate kesta kasutamist jätkata. Siin tuleb mängu ampersandi operaator (&).
Lisades mis tahes käsule ampersandi operaatori, dikteerite kesta käivitage see Linuxi käsk taustal et saaksite jätkata kesta kasutamist sidumata.
gedit &
Tavaliselt, kui käivitate gedit terminalist, ei saa te terminali kasutada, kui te ei sulge tekstiredaktorit. Kuid lisades ampersandi operaatori, saate selle taustal töötama panna ja kesta kohe kasutamist jätkata.
2. Semikooloni operaator (;)
Semikooloni operaator on uskumatult kasulik Linuxi aheldamisoperaator, mida saate kasutada käskude täitmiseks määratletud järjestikuses järjekorras. Järjesta oma käsud ja eralda need semikooloniga.
pwd; mkdir test; cdtest; puutefail
Ülaltoodud süntaks määrab, et kest täidab iga käsku üksteise järel. Pange tähele, et kest ei kontrolli, kas iga käsk lõpeb edukalt. Niipea, kui kest saab tagastuskoodi, liigub see järgmise käsu täitmisele.
3. VÕI operaator (||)
Operaator VÕI täidab järgneva käsu ainult siis, kui eelnev käsk ebaõnnestub, st tagastab väljumiskoodi 0. See toimib nagu loogiline VÕI värav, mis tagastab väärtuse 1, kui sisend on 0.
bad_command || ls
Selles näites süntaksis halb_käsk on vale käsk, mille täitmine ebaõnnestub ja kuna see ebaõnnestub, järgneb operaatorile VÕI järgnev käsk, mis on ls käsk, käivitatakse edukalt.
4. Toruoperaator (|)
Toruoperaator suunab eelmise käsu väljundi sisendiks järgmisele käsule. Seda kasutatakse kõige sagedamini andmete filtreerimiseks käsuga grep.
kassi test | grep -i "ära kasutada"
See käsk saadab väljundi kassi käsk sisendiks käsule grep, mis seejärel filtreerib väljundi määratud stringi järgi.
5. AND operaator (&&)
See operaator toimib sarnaselt semikooloni operaatoriga, välja arvatud see, et erinevalt semikooloni operaatorist täidab operaator AND käske ainult siis, kui eelnev käsk täideti edukalt.
pwd && mkdir test && cd test && halb_käsk && ls
Selles näitesüntaksis täidab kest edukalt kõiki käske kuni halb_käsk. Kuna aga bad_command ei tööta, tagastab kest veateate ja jätab käsu ls vahele.
6. MITTE operaator (!)
Operaator NOT töötab programmeerimises sarnaselt välja arvatud lausega. Näiteks kui soovite teha toimingu suure hulga failidega kataloogis, kuid soovite välistada a mõne parameetri põhjal vähe, siis saab kasutada operaatorit NOT, edastades parameetri pärast märgi NOT (!).
rm-r !(*.txt)
See näidiskäsk eemaldab rekursiivselt kõik kataloogis olevad failid, välja arvatud failid, millel on ".txt" laiendus.
7. Eelisoperaator ((..))
AND- ja OR-operaatoritele järgnevad käsud sõltuvad eelmise käsu väljumiskoodist. Need operaatorid on binaarsed ja hindavad ainult kahte käsku, mis tulevad enne ja pärast neid.
Nii et mitme operaatoriga töötades on oluline määrata grupid ja prioriteet, et tagada täitmisjärjestuse vastavus teie ootustele.
(ls *.txt > txt-files.list && cp *.tx ~) && (ls *.deb > deb-packages.list && cp *.deb ~) || kaja "Paremustest!"
Selles näidissüntaksis peavad mõlemad käsurühmad viimase käsu eduka täitmise tagamiseks tagastama väljumiskoodi 0. See näide nõuab, et mõlemad esimese komplekti () käsud väljuksid 0-ga, et teine komplekt () saaks käivituda.
8. Kombinatsioonioperaator ({..})
Nagu nimigi vihjab, kasutatakse käskude rühmitamiseks kombinatsioonioperaatorit. Ükskõik, milliseid käske soovite rühmitada, võite need asetada keerdsulgudesse ja need käivitatakse sõltuvalt esimese käsu väljumiskoodist.
test -f /etc/passwd && {pwd; kuupäev} && kaja $0; kaja "Tere"
Näidissüntaks testib, kas /etc/passwd faili on olemas, printige praegune töökataloog, kuupäev, kesta nimi ja kaja "Tere".
9. Konkatenatsioon või põgenemisoperaator (\)
Konkatenatsiooni- või paooperaatoril on kaks funktsiooni. Saate seda kasutada kas kahe käsu ühendamiseks või paomärgina, kui töötate kestas stringidega.
mkdir test0 test1 \ test2
kaja "Tere! alates a
teine pool"
Esimene käsk loob neli kataloogi nimega test0 kuni test2 ja teine käsk prindib stringi eraldatuna uue reaga.
10. Ümbersuunamisoperaatorid (>, >>,
Ümbersuunamisoperaatorid suunavad väljundi või sisendi faili ümber, kirjutades faili ümber või lisades sellele. Kui soovite faili uuesti kirjutada, peate kasutama ühe nurksulu (>) süntaksit. Kui soovite failile lisada, peate kasutama topeltnurksulgude süntaksit (>>).
kaja "dsd"> test; kaja "bssss">> test
Näidissüntaksis kirjutab esimene käsk "test" faili antud stringiga üle, kuid teise käsu puhul lisatakse esitatud string testfailile.
Kiirendage oma Linuxi terminali töövoogu
Spetsiaalsete operaatorite kasutamine lihtsustab teie jaoks ülesannete täitmist märkimisväärselt, kuid töövoogu kiirendamiseks on veel mitmeid viise.
Üks lihtne ja kasulik viis lühema ajaga rohkem ära teha on tutvuda mõne käepärase kesta otseteega. Nende otseteedega harjumine läheb kaugele ja leiate end nendele lootmast seni, kuni Linuxit kasutate.