Programavimo scenarijus naudojant „bash“ sistemoje „Linux“

Turinys

Nors mes paprastai jį naudojame administracinėms ar failų valdymo operacijoms, „Linux“ konsolė išplečia savo funkcijas toli už šio tikslo ir leidžia mums programuoti scenarijus pagal savo poreikius.
Iš esmės sakome, kad tai failas, kuriame yra tam tikra programavimo kalba parašytas kodas, kurį sistema naudoja tam tikrai užduočiai atlikti. Jame nebūtina turėti išorinio įvesties ar grafinės sąsajos, tačiau reikia išvesti apdorotus duomenis.
Norėdami pradėti, turime turėti teksto redaktorių ir norą programuoti. Failus, kuriuos išsaugome su plėtiniu .sh, konsolė gali vykdyti (arba interpretuoti), jei pirmoji eilutė yra tokia:
#! / bin / bash
Tai nurodo sistemai naudoti konsolę failui paleisti. Be to, simbolis # leidžia rašyti komentarus.
Bandysime keletą pavyzdžių
Mes sukuriame failą pavadinimu downloads.sh
 #! / bin / bash # sukurkime slapyvardį, vadinamą atsisiuntimais, naudodami atsisiuntimų katalogo adresą, slapyvardį atsisiuntimai = ’ / home / user / Downloads’

Išsaugokite jį kaip downloads.sh
Norėdami paleisti „Bash“ scenarijų, suteikite jam leidimus vykdyti. Norėdami tai padaryti, įveskite komandų terminalą:
chmod u + x parsisiuntimai.sh
Nepamirškite paleisti šios komandos kiekvienam sukurtam scenarijui
Paleiskite „scenarijų“ paleisdami terminalą
./downloads.sh
Jei tai pavyko, turėtumėte būti atsisiuntimų kataloge
Naudokite kintamuosius ir parametrus scenarijuje
 #! / bin / bash # Kintamųjų naudojimas # echo "Pirmasis jūsų argumentas yra„ $ 1 echo "Antrasis argumentas yra„ $ 2 “

Pavyzdžiui, scenarijus bus paleistas
./miScript.sh sveiki 4

Rezultatas turėtų būti
Pirmas tavo argumentas - labas
Antrasis jūsų argumentas yra 4
Kaip sudaryti sąlygas įvesti kintamuosius ir parametrus vykdymo metu
 #! / bin / bash echo "Įveskite savo vardą ir paspauskite ENTER" #Skaitykite kintamojo pavadinimą perskaitykite vardo aidą "Jūsų vardas yra $ name"

Naudingesnis scenarijaus pavyzdys, kuris parodys, kokius procesus vykdo tam tikras įvestas vartotojas
 #! / bin / bash RES = s #reakcija į ciklą tęsiama, jei [$ RES = s] do echo "Įveskite vartotojo vardą:" skaitykite USU #username ps aux | grep $ USU echo "Ar norite tęsti?" skaityti AEI padaryta

Jei norime neleisti bet kuriam vartotojui vykdyti scenarijaus pradžioje, galime įdėti šį kodą, kad jį galėtų vykdyti tik pagrindinis vartotojas
 #! / bin / bash, jei [[$ EUID -ne 0]]; tada echo "Šį scenarijų turi vykdyti pagrindinis vartotojas" 1> & 2 exit 1 fi 
Jei kitas vartotojas bandys paleisti scenarijų, jis neveiks ir terminalo langas bus uždarytas.
Mes taip pat galime leisti kai kuriems vartotojams juos paleisti pradžioje, mes įdėsime šį kodą
 #! / bin / bash AUTHORIZED_USER = "leidžiamas vartotojas", jei [$ USER! = $ AUTHORIZED_USER]; tada echo "Šį scenarijų turi vykdyti vartotojas $ AUTHORIZED_USER" 1> & 2 exit 1 fi

Mes sukursime „bash“ meniu, kad vartotojui būtų suteiktos skirtingos parinktys arba kad būtų lengviau bendrauti
 #! / bin / bash clear while: do echo "Pasirinkite parinktį" echo "1. Vartotojai prisijungę?" echo "2. Išteklių suvartojimas" echo "3. Paslaugos veikia?" echo "4. Išeiti" echo -n "Pasirinkite parinktį [1 - 4]" skaityti parinkties atvejį $ parinktis 1) echo "Jie yra prijungti:"; quien ;; 2) aidas „Running htop“; htop ;; 3) lsof -n -i -P | grep '*;; 4) aidas „Pabaiga“; 1 išėjimas ;; *) echo "$ opc yra neteisingas pasirinkimas?"; echo "Norėdami tęsti, paspauskite klavišą …"; skaityti kvailas ;; padaryta
Ar jums patiko ir padėjo ši pamoka?Galite apdovanoti autorių paspausdami šį mygtuką, kad suteiktumėte jam teigiamą tašką
wave wave wave wave wave