Satura rādītājs
Bash ir arī labi nodalīt lietas, piemēram, funkcijas, kas kopīgas visām programmām, tās var glabāt vienā bibliotēku komplektā, lai vēlāk tās varētu izmantot citas programmas.Šajā piemērā mēs izveidosim bibliotēkas failu, kurā mēs ievietosim savas funkcijas un citu, kas izmanto šo failu. Jāatceras, ka jāizmanto absolūtie ceļi.
Šim nolūkam mēs izveidosim savu bibliotēkas failu, mūsu bibliotēkas failu, kas atradīsies tā izmantošanai stratēģiskā vietā, / usr / local / bin mūsu fails tiks saukts par libreriaBash.sh
Mēs to atveram vai izveidojam, izmantojot tādu teksta redaktoru kā Gedit vai ja esat eksperts ar vienkāršu komandu redaktoru, piemēram, nano vai vi. Iekšpusē mēs varam iegūt šādu kodu
#! / bin / bash # Bibliotēku fails # Šeit jūs varat deklarēt mainīgos, ja vēlaties. #Rādīt sistēmas datuma un laika funkciju tagad {local timeNow local ret timeNow = $ (datums + "% d /% m /% Y% H:% M:% S.% s") ret = $? echo $ timeNow} #Izslēdziet datoru pie x laika funkcijas izslēgšanas {echo "Izslēgšanās laiks (min):" lasīšanas laiks sudo shutdown -h $ time} #Atinstalējiet lietojumprogrammu, tā tiek nodota pēc parametra un nepieciešama root lietotāja funkcijas atinstalēšana {sudo apt-get remove $ application} #if scrot ir instalēts, mēs varam uzņemt ekrānuzņēmumus funkciju ekrānuzņēmumus {scrot -e 'mv $ f ~ / Attēli / scrot / `date +% d-% m-% y_% H:% M:% S`_capture.png.webp '}
Mēs deklarējam funkcijai lokālos mainīgos, ja to nedarīsim, funkcija ietekmēs mainīgos, kas atbilst nosaukumam, un otrādi.
Kad būsim pabeiguši savu bibliotēkas failu un neaizmirstot, ka tam ir jābūt izpildes atribūtiem, mēs izveidosim savu programmu, kas izmantos šo bibliotēku.
Tagad apskatīsim mūsu test2.sh faila saturu
#!/bin/bash #file test2.sh #ietver bibliotēkas ./usr/local/bin/libreriaBash.sh mytime = $ (tagad) echo "bibliotēkas funkcijas izvades piemērs: $ mytime" echo "otrais bibliotēkas funkcijas piemērs izlaide: $ (tagad) "
Mēs arī novērojam, ka funkcijas var izmantot, nenododot tās mainīgajam.
Paturiet prātā, ka ir ļoti maza atšķirība starp bash izsaukšanu, lai to iekļautu mūsu programmā, un bash izpildi citā bash.
#! /bin /bash #test2.sh fails #ietver bibliotēkas /usr/local/bin/libreriaBash.sh
Tas, ko mēs sakām, ir palaist failu
tagad mēs varam palaist failu ./test2.sh
Tātad mēs varam izveidot citus skriptu failus un pievienot funkcijas iepriekš izveidotajām bibliotēkām, piemēram, mēs varam izsaukt šo funkciju, lai no jauna skripta attēliem uzņemtu ekrānos, kas mums jau ir bibliotēkās. Sh
#!/bin/bash #.sh fails #ietver bibliotēkas ./usr/local/bin/libreriaBash.sh uztver
Iespējas ir daudz, jo citā bash skripta piemērā ir iekļauta vairāku lejupielāde, bet kā parametrs tiek nodots teksta fails
#! / bin / bash ## call wget un lejupielādējiet to, ko mēs norādām ar ātrumu, ko mēs sakām ##, un mapē mēs vēlamies skaidru atbalsi "Jūs varat ievadīt teksta failu" echo "ar šādām adresēm: '-i fails .txt '"miega 2 echo -n" Ievadiet lejupielādes adresi: "lasiet lejupielādes miega 1 atbalsi" Galamērķim jābūt esošai mapei datorā "echo -n" Ievadiet galamērķa mapi: "lasīt galamērķa miega 1 atbalsi" Ātrums Ir kb vai mb Piemēram: 50k 1m "echo" vai neierobežotam "echo -n" ievadiet 0 (nulle) Ievadiet lejupielādes ātrumu: "lasīšanas ātrums miega 1 wget -c --limit -rate = $ speed -P $ galamērķa $ faila lejupielāde = `basename $ download` laiks = $ (datums +% H:% M:% S) echo" Pabeigta $ faila lejupielāde $ galamērķī $ stundā "] miega 3
Priekšrocība ir tāda, ka mums var būt vairākas bibliotēkas, kas var strādāt ar failiem, direktorijiem, serveriem, instalēt vai atinstalēt programmas, pārraudzīt resursus vai veikt atkārtotus uzdevumus, atkārtoti neievadot visu kodu.Vai jums patika šī apmācība un palīdzējāt tai?Jūs varat apbalvot autoru, nospiežot šo pogu, lai sniegtu viņam pozitīvu punktu