Korisna bach skripta za Linux

Sadržaj
U bashu je također dobro odvojiti stvari, na primjer funkcije zajedničke za sve programe, mogu se držati u jednom skupu knjižnica, da bi ih kasnije mogli koristiti drugi programi.
U ovom primjeru izgradit ćemo datoteku knjižnice u koju ćemo staviti naše funkcije i drugu koja koristi tu datoteku. Ono što treba zapamtiti je korištenje apsolutnih putova.
Za to ćemo stvoriti našu knjižničnu datoteku, našu knjižničnu datoteku koja će se nalaziti na strateškom mjestu za njezinu upotrebu, u / usr / local / bin naša će se datoteka zvati libreriaBash.sh
Otvaramo ga ili stvaramo uređivačem teksta poput Gedita ili ako ste stručnjak s jednostavnim uređivačem naredbi poput nano ili vi. Unutra možemo unijeti sljedeći kod
 #! / bin / bash # Datoteka knjižnica # Ovdje možete deklarirati varijable ako želite. #Prikaži sada funkciju i datum sustava {local timeNow local ret timeNow = $ (datum + "% d /% m /% Y% H:% M:% S.% s") ret = $? echo $ timeNow} #Shutdown the computer at x time function shutdown {echo "Shutdown time (min):" time read sudo shutdown -h $ time} #Deinstalirajte aplikaciju, ona se prosljeđuje prema parametru i zahtijeva deinstalaciju root korisničke funkcije {sudo apt-get remove $ application} #ako je instaliran scrot možemo snimiti snimke zaslona snimke zaslona {scrot -e 'mv $ f ~ / Images / scrot / `date +% d-% m-% y_% H:% M:% S`_capture.png.webp '}

Varijable deklariramo lokalnima za funkciju, ako to ne učinimo, funkcija će utjecati na varijable koje odgovaraju imenu i obrnuto.
Nakon što dovršimo datoteku knjižnice i bez zaborava da mora imati atribute izvođenja, izradit ćemo naš program koji će koristiti tu knjižnicu.
Pogledajmo sada sadržaj naše datoteke test2.sh
 #!/bin/bash #file test2.sh #include the libraries ./usr/local/bin/libreriaBash.sh mytime = $ (now) echo "primjer izlaza funkcije knjižnice: $ mytime" echo "primjer dva bibliotečke funkcije izlaz: $ (sada) " 

Također primjećujemo da se funkcije mogu koristiti bez prenošenja u varijablu.
Imajte na umu da postoji vrlo mala razlika između pozivanja basha za uključivanje u naš program i izvođenja basha unutar drugog basha.
 #! /bin /bash #test2.sh datoteka #uključite knjižnice /usr/local/bin/libreriaBash.sh 

Ono što govorimo je pokretanje datoteke
sada možemo pokrenuti datoteku ./test2.sh
Tako možemo stvoriti druge datoteke skripti i dodati funkcionalnosti u prethodno stvorene knjižnice, na primjer možemo pozvati funkciju za snimanje zaslona koje već imamo u knjižnicama iz nove slike skripte.sh
 #!/bin/bash #.sh datoteka #uključi knjižnice ./usr/local/bin/libreriaBash.sh hvata 

Opcija je mnogo jer drugi primjer bash skripte uključuje višestruko preuzimanje, ali prosljeđivanje tekstualne datoteke kao parametra
 #! / bin / bash ## nazovite wget i preuzmite ono što označavamo brzinom koju izgovaramo ## i u mapi želimo jasan odjek "Možete unijeti tekstualnu datoteku" echo "s adresama poput ove: '-i datoteka .txt '"sleep 2 echo -n" Unesite adresu za preuzimanje: "read download sleep 1 echo" Odredište mora biti postojeća mapa na vašem računalu "echo -n" Unesite odredišnu mapu: "read destination sleep 1 echo" Brzina Je u kb ili mb Primjer: 50k 1m "echo" ili unesite 0 (nula) za neograničeno "echo -n" Unesite brzinu preuzimanja: "brzina čitanja spava 1 wget -c --limit -rate = $ speed -P $ odredište $ file download = `basename $ download` vrijeme = $ (datum +% H:% M:% S) echo" Dovršeno preuzimanje datoteke $ u odredištu u $ hour "] spavanje 3 

Prednost je u tome što možemo imati više knjižnica za rad s datotekama, direktorijima, poslužiteljima, instaliranje ili deinstaliranje programa, nadgledanje resursa ili izvođenje ponavljajućih zadataka bez ponovnog unosa koda.Je li vam se svidio i pomogao ovaj vodič?Autor možete nagraditi pritiskom na ovaj gumb kako biste mu dali pozitivan bod
wave wave wave wave wave