Zenity dodaje grafička sučelja za skriptne ljuske s jednim naredbom. Shell skripte izvrstan su način automatizacije zadataka koji se ponavljaju, ali obično se ograničavaju na terminal - Zenity ih izvodi iz terminala i na vašu radnu površinu.
Dali smo uvod u ljuske skriptiranja u prošlosti. Ne morate biti programer kako biste započeli s shell skriptima - oni zahtijevaju malo više od poznavanja Linux naredbi terminala.
Zenity dolazi s Ubuntu po defaultu. Ako koristite Ubuntu izvedbu, kao što je Kubuntu, možda ga morate ručno instalirati pomoću sljedeće naredbe:
sudo apt-get install zenity
Zenity je dio GNOME, pa je već trebao biti uključen u Linux distribucije koje koriste GNOME radnu površinu. Provjerite upravitelja paketa za zenity paket ako ga nemate.
Možete se igrati s Zenityom s terminala. Pretpostavimo da želite stvoriti prozor pogreške kada se pojavi problem s skriptom ljuske. Evo primjere naredbe koju biste mogli koristiti:
zenity -error -title = "Došlo je do pogreške" -text = "Došlo je do problema prilikom pokretanja skripte ljuske."
Pokrenite naredbu i vidjet ćete prozor s porukom.
Stavite ovu jednu naredbu u skriptu ljuske na ispravnom mjestu i imat ćete grafičku poruku o pogrešci. Možete upotrijebiti i varijable da biste uključili više informacija o pogrešci.
Pretpostavimo da želite postaviti pitanje da ili ne. Možete upotrijebiti naredbu poput ove:
zenity -question -title = "Upit" -text = "Želite li pokrenuti skriptu?"
Možete uhvatiti odgovor "da ili ne" u skripti ljuske i izvršiti različite naredbe na temelju kojih gumba korisnik klikne.
Tu je i dijaloški okvir za unos teksta:
zenity -entry -title = "Favorite Website" -text = "Koja je vaša omiljena web stranica?"
Uhvatite korisnički unos u skriptu ljuske i možete je pohraniti kao varijablu.
Tu je i alat za odabir datoteka, kalendar i druge vrste dijaloga. Za potpuni popis tipova dijaloga i njihovih opcija, pogledajte Zenityovu priručnu stranicu.
Pokušajmo koristiti Zenity kako bismo stvorili jednostavnu grafičku shell skriptu. Sa samo tri naredbe možemo izraditi grafički program timera:
#! / Bin / bash
# Ova skripta traži od korisnika određeno vrijeme, čeka određeni iznos
# vremena i prikazuje dijaloški okvir upozorenja.TIME = $ (zenity -entry-title = "Timer" -text = "Unesite trajanje timera. \ N \ n Koristite 5s za 5 sekundi, 10m za 10 minuta ili 2h za 2 sata.")
spavati $ TIME
zenity -info -title = "Timer Complete" -text = "Timer je gotov. \ n \ n To je $ TIME."
Ovdje koristimo neke dodatne trikove. Vrijednost varijable TIME dobivamo od prve zenity naredbe i unosimo je na naredbu za spavanje. Također upotrebljavamo / n stvoriti nove retke teksta u dijalozima zeniteta.
Nakon što spremite skriptu ljuske i pokrenete chmod + x naredbu da ga damo izvršnim dozvolama, možemo ga pokrenuti.
Unesite trajanje i skripta će upotrijebiti standard spavati naredba za odbrojavanje u pozadini. Kada završi naredba za naredbu mirovanja, skripta će prikazati poruku o zenity info.
Možete stvoriti prečac na radnoj površini ili ploči za ovu skriptu i pokrenuti je bez dodirivanja terminala.
Ovo je samo ogrebotina površine onoga što biste mogli učiniti sa zenitetom; možete ga koristiti za stvaranje mnogo složenijih programa. Ako tražite više informacija o skriptiranju ljuske, pogledajte naš vodič za upotrebu za petlje u skriptama ljuske.