If-Koubou

Cum sa faci Script-uri Simple Graphic Shell cu Zenity pe Linux

Cum sa faci Script-uri Simple Graphic Shell cu Zenity pe Linux (Cum să)

Zenity adaugă interfețe grafice la scripturile shell cu o singură comandă. Shell script-urile sunt o modalitate foarte bună de a automatiza sarcinile repetitive, dar în mod normal sunt limitate la terminal - Zenity le scoate din terminal și pe desktop.

Am dat o introducere pentru scrierea shell-ului în trecut. Nu trebuie să fii programator pentru a începe cu script-urile de shell - acestea necesită puțin mai mult decât cunoașterea comenzilor terminale Linux.

Noțiuni de bază Zenity

Zenity vine în mod implicit cu Ubuntu. Dacă utilizați un derivat Ubuntu, cum ar fi Kubuntu, va trebui să îl instalați manual cu următoarea comandă:

sudo apt-get instalare zenitate

Zenity face parte din GNOME, deci ar trebui să fie deja inclus în distribuțiile Linux care utilizează desktopul GNOME. Verificați managerul de pachete pentru zenity dacă nu aveți.

Utilizând Zenity

Poți să te joci cu Zenity de la terminal. Să presupunem că doriți să creați o fereastră de eroare atunci când apare o problemă cu scriptul dvs. shell. Iată o comandă de exemplu pe care o puteți folosi:

zenity -error -title = "A apărut o eroare" -text = "A apărut o problemă în timpul executării scriptului shell."

Rulați comanda și veți vedea o fereastră cu mesajul.

Puneți această singură comandă în script-ul dvs. de shell în locul corect și veți avea un mesaj de eroare grafic. De asemenea, puteți utiliza variabilele pentru a include mai multe informații despre eroare.

Să presupunem că vrei să ceri o întrebare da sau nu. Puteti folosi o comanda ca aceasta:

zenity -question -title = "Interogare" -text = "Doriți să rulați scriptul?"

Puteți detecta răspunsul da sau nu în script-ul dvs. de shell și puteți executa comenzi diferite bazate pe butonul pe care utilizatorul îl face clic.

Există, de asemenea, un dialog de introducere a textului:

zenity -entry -title = "Site-ul favorit" -text = "Care este site-ul dvs. preferat?"

Prindeți intrarea utilizatorului într-un script de shell și îl puteți stoca ca variabilă.

Există, de asemenea, un selector de fișiere, un calendar și alte tipuri de dialoguri. Pentru o listă completă a tipurilor de dialog și a opțiunilor acestora, consultați pagina manualului Zenity.

Un exemplu de script

Să încercăm să folosim Zenity pentru a crea un script de shell simplu. Cu doar trei comenzi, putem crea un program grafic cu temporizator:

#! / Bin / bash
# Acest script cere utilizatorului o perioadă de timp, așteaptă suma specificată
# de timp și arată un dialog de alertă.

TIME = $ (zenitate -entry -title = "Timer" -text = "Introduceți o durată pentru cronometru. \ N \ n Utilizați 5s pentru 5 secunde, 10m pentru 10 minute sau 2h pentru 2 ore.

dormi $ TIME

zenity -info -title = "Timer Complete" -text = "Timerul sa terminat. \ n \ n A fost $ TIME."

Folosim câteva trucuri suplimentare aici. Vom obține valoarea variabilei TIME din prima comandă de zenitate și o vom alimenta comenzii de somn. De asemenea, folosim / n pentru a crea noi linii de text în dialogurile de zenitate.

După salvarea scriptului shell și executarea acestuia chmod + x comanda pe ea pentru a da permisiuni executabile, o putem lansa.

Introduceți o durată și scriptul va utiliza standardul dormi comanda pentru a număra în fundal. Când se termină temporizatorul comenzii de somn, scriptul va afișa mesajul info zenity.

Puteți crea o comandă rapidă pentru desktop sau pentru panoul de comandă pentru acest script și îl puteți rula fără să atingeți chiar terminalul.

Aceasta este doar zgârierea suprafeței a ceea ce ați putea face cu zenitatea; l-ați putea folosi pentru a face programe mult mai complicate. Dacă sunteți în căutarea pentru mai multe informații despre shell-ul shell, consultați ghidul nostru de a utiliza pentru buclele în scripturile shell.