Úvodná » ako » Ako urobiť jednoduché grafické Shell skripty so Zenity na Linuxe

    Ako urobiť jednoduché grafické Shell skripty so Zenity na Linuxe

    Zenity pridáva grafické rozhrania ku skriptom shell pomocou jediného príkazu. Shell skripty sú skvelý spôsob, ako automatizovať opakujúce sa úlohy, ale sú zvyčajne obmedzené na terminál - Zenity ich vyvedie z terminálu a na vašu plochu.

    Dali sme úvod do shell skriptovania v minulosti. Nemusíte byť programátorom, aby ste mohli začať s shell skriptmi - vyžadujú len oveľa viac vedomostí ako príkazy terminálu Linux.

    Získanie Zenity

    Zenity je štandardne dodávaný s Ubuntu. Ak používate derivát Ubuntu, napríklad Kubuntu, možno budete musieť manuálne nainštalovať nasledujúcim príkazom:

    sudo apt-get install zenity

    Zenity je súčasťou GNOME, takže by sa už mala zahrnúť do distribúcií systému Linux, ktoré používajú pracovnú plochu GNOME. Skontrolujte správcu balíkov pre zenit ak ho nemáte.

    Použitie Zenity

    Môžete hrať so Zenitou z terminálu. Povedzme, že chcete vytvoriť chybové okno, ak sa vyskytne problém s vašim shellovým skriptom. Tu je príklad príkazu, ktorý by ste mohli použiť:

    zenity -error -title = "Vyskytla sa chyba" -text = "Vyskytol sa problém počas spustenia shellového skriptu."

    Spustite príkaz a uvidíte okno so správou.

    Vložte tento jediný príkaz do skriptu na správnom mieste a budete mať grafické chybové hlásenie. Môžete tiež použiť premenné na zahrnutie ďalších informácií o chybe.

    Povedzme, že sa chcete spýtať áno alebo nie. Môžete použiť príkaz, ako je tento:

    zenity -question -title = "Dotaz" -text = "Chcete skript spustiť?"

    Môžete zachytiť áno alebo žiadnu odpoveď vo vašom shellovom skripte a vykonať rôzne príkazy na základe toho, ktoré tlačidlo používateľ klikne.

    K dispozícii je aj dialógové okno pre zadávanie textu:

    zenity -entry -title = "Obľúbené webové stránky" -text = "Aké sú vaše obľúbené webové stránky?"

    Zachyťte vstup používateľa v shellovom skripte a môžete ho uložiť ako premennú.

    K dispozícii je tiež výber súboru, kalendár a iné typy dialógov. Úplný zoznam typov dialógových okien a ich možností nájdete na stránke manuálu spoločnosti Zenity.

    Príklad scenára

    Pokúsme sa použiť Zenity na vytvorenie jednoduchého grafického shell skriptu. Pomocou troch príkazov môžeme vytvoriť program grafického časovača:

    #! / Bin / bash
    # Tento skript pošle používateľovi čas, čaká na zadanú sumu
    # času a zobrazí dialógové okno s upozornením.

    TIME = $ (zenity -entry -title = "Timer" -text = "Zadajte trvanie časovača. \ N \ n Použite 5 sekúnd na 5 sekúnd, 10 metrov na 10 minút alebo 2 hodiny na 2 hodiny.

    spať $ TIME

    zenity -info -title = "Časovač dokončený" -text = "Časovač skončil. \ n \ n Bolo to $ TIME."

    Použili sme tu ešte niekoľko trikov. Hodnotu premennej TIME získame z prvého príkazu zenity a privedieme ho do príkazu spánku. Používame tiež / n vytvoriť nové riadky textu v dialógových oknách zenity.

    Po uložení shell skriptu a spustení chmod + x príkaz na to, aby mu dal spustiteľné povolenia, môžeme ho spustiť.

    Zadajte trvanie a skript použije štandard spánok príkaz odpočítať na pozadí. Keď časovač príkazu spánku skončí, skript zobrazí správu o zenity info.

    Môžete vytvoriť desktopový alebo panelový skrat pre tento skript a spustiť ho bez toho, aby ste sa dokonca dotkli terminálu.


    To je len poškriabanie povrchu toho, čo by ste mohli robiť so zenitou; mohli by ste ju použiť na vytváranie oveľa zložitejších programov. Ak hľadáte viac informácií o shell skriptovaní, pozrite si našu príručku k použitiu pre slučky v skriptoch shell.