If-Koubou

Kako napraviti jednostavne grafičke shell skripte s Zenity na Linuxu

Kako napraviti jednostavne grafičke shell skripte s Zenity na Linuxu (Kako da)

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.

Dobivanje zeniteta

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.

Koristeći Zenity

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.

Primjer skripte

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.