Zenity - Luo graafisia (GTK+) -valintaikkunoita komentorivi- ja komentosarjakirjoihin


GNU Linux, käyttöjärjestelmä, joka perustuu erittäin tehokkaaseen ytimeen nimeltä Linux. Linux on kuuluisa komentorivitoiminnoistaan. Kun Linux on keksitty päivittäiseen ja pöytätietokoneisiin, nix ei ole enää puolueellinen komentoriville, se on yhtä graafinen ja graafisen sovelluksen kehittäminen ei ole enää vaikea tehtävä.

Tässä artikkelissa keskustelemme yksinkertaisen graafisen valintaikkunan luomisesta ja suorittamisesta GTK+ -sovelluksella nimeltä "Zenity".

Mikä on Zenity?

Zenity on avoimen lähdekoodin ja eri alustojen sovellus, joka näyttää GTK+ -valintaikkunat komentorivillä ja komentotulkkikomentosarjan avulla. Se mahdollistaa tietojen kysymisen ja esittämisen shellille graafisissa laatikoissa. Sovelluksen avulla voit luoda graafisia valintaikkunoita komentorivillä ja tekee vuorovaikutuksesta käyttäjän ja komentotulkin välillä erittäin helppoa.

On muitakin vaihtoehtoja, mutta mikään ei ole verrattavissa Zenityn yksinkertaisuuteen, varsinkin kun et tarvitse monimutkaista ohjelmointia. Zenity, työkalu, joka sinun täytyy olla käsissäsi.

Zenityn ominaisuudet

  1. FOSS-ohjelmisto
  2. Cross Platform -sovellus
  3. Salli GTK+ -valintaikkunan suorittaminen
  4. Komentorivityökalu
  5. Tuki Shell Scriptingissä

Hyödyllisyys

  1. Helppo graafisen käyttöliittymän luominen
  2. Vähemmän ominaisuuksia kuin muissa monimutkaisissa työkaluissa
  3. Mahdollistaa shell-skriptien vuorovaikutuksen graafisen käyttöliittymän käyttäjien kanssa
  4. Yksinkertainen dialogin luominen on mahdollista graafista käyttäjän vuorovaikutusta varten

Koska Zenity on saatavilla kaikille tunnetuille tärkeimmille alustoille ja perustuu GTK+ -kirjastoon, Zenity-ohjelma voidaan siirtää toiselle alustalle tai toisesta alustasta.

Zenityn asennus Linuxiin

Zentity on oletuksena asennettu tai saatavilla useimpien nykyisten Linux-jakelun arkistoon. Voit tarkistaa, onko se asennettu koneellesi vai ei, suorittamalla seuraavat komennot.

ravisaive@tecmint:~$ zenity --version 

3.8.0
ravisaive@tecmint:~$ whereis zenity 

zenity: /usr/bin/zenity /usr/bin/X11/zenity /usr/share/zenity /usr/share/man/man1/zenity.1.gz

Jos sitä ei ole asennettu, voit asentaa sen komennolla Apt tai Yum alla kuvatulla tavalla.

ravisaive@tecmint:~$ sudo apt-get install zenity		[on Debian based systems]

root@tecmint:~# yum install zenity				[on RedHat based systems]

Lisäksi voit myös rakentaa sen lähdetiedostoista, ladata uusimman Zenity-lähdepaketin (eli nykyisen version 3.8) seuraavan linkin kautta.

  1. http://ftp.gnome.org/pub/gnome/sources/zenity/

Zenity Basic -valintaikkunat

Jotkut Zenityn perusvalintaikkunat, jotka voidaan kutsua suoraan komentoriviltä.

1. Entä nopea kalenterivalintaikkuna?
root@tecmint:~# zenity --calendar

2. Virhevalintaikkuna
root@tecmint:~# zenity --error

3. Yleinen tekstinsyöttö -valintaikkuna
root@tecmint:~# zenity --entry

4. Tietojen valintaikkuna
root@tecmint:~# zenity --info

5. Kysymys -valintaikkuna
root@tecmint:~# zenity --question

6. Edistymispalkki
root@tecmint:~# zenity --progress

7. Skaalaus-valintaikkuna
root@tecmint:~# zenity --scale

8. Salasana-valintaikkuna
root@tecmint:~# zenity --password

9. Lomake-valintaikkuna
root@tecmint:~# zenity --forms

10. Tietoa koskeva dialogi
root@tecmint:~# zenity --about

Luo Shell Script -valintaikkuna

Nyt keskustelemme täällä Zenity Dialogin luomisesta yksinkertaisilla komentotulkilla. Vaikka voimme luoda yhden valintaikkunan suorittamalla Zenity-komennot suoraan komentotulkista (kuten teimme edellä), mutta silloin emme voi linkittää kahta valintaikkunaa saadaksemme mielekkään tuloksen.

Entä interaktiivinen valintaikkuna, joka ottaa sinulta syötteitä ja näyttää tuloksen.

#!/bin/bash 
first=$(zenity --title="Your's First Name" --text "What is your first name?" --entry) 
zenity --info --title="Welcome" --text="Mr./Ms. $first" 
last=$(zenity --title="Your's Last Name" --text "$first what is your last name?" --entry) 
zenity --info --title="Nice Meeting You" --text="Mr./Ms. $first $last"

Tallenna se tiedostoon anything.sh (tavanomaisesti) ja älä unohda tehdä siitä suoritettavaa. Aseta 755-käyttöoikeus anything.sh-tiedostolle ja suorita komentosarja.

root@tecmint:~# chmod 755 anything.sh 
root@tecmint:~# sh anything.sh

Tietoja Skriptin kuvauksesta

Perinteinen shebang eli hashbang

#!/bin/bash

Alla olevalla rivillä "first" on muuttuja ja muuttujan arvo luodaan ajon aikana.

    1. "–Entry" tarkoittaa, että zenityä pyydetään luomaan tekstisyöttöruutu.
    2. '– title=' määrittää luodun tekstikentän otsikon.
    3. "—text=" määrittää tekstin, joka on käytettävissä tekstinsyöttöruudussa.
first=$(zenity --title="Your's First Name" --text "What is your first name?" --entry)

Tämä alla olevan komentosarjatiedoston rivi on tarkoitettu tiedon (–info) -valintaikkunan luomiseen, otsikolla "Tervetuloa" ja tekstillä "Mr./Ms.first".

zenity --info --title="Welcome" --text="Mr./Ms. $first"

Tämä komentosarjan rivi on samanlainen kuin skriptin rivi numero kaksi, paitsi että tässä määritellään uusi muuttuja "last".

last=$(zenity --title="Your's Last Name" --text "$first what is your last name?" --entry)

Tämä skriptin viimeinen rivi on jälleen samanlainen kuin skriptin kolmas rivi ja se luo tiedon valintaikkunan, joka sisältää sekä muuttujat $first että $last.

zenity --info --title="Nice Meeting You" --text="Mr./Ms. $first $last"

Lisätietoja mukautettujen valintaikkunoiden luomisesta komentosarjan avulla on seuraavalla viitesivulla Zenity.

  1. https://help.gnome.org/users/zenity/stable/

Seuraavassa artikkelissa integroimme Zenityn lisää shell-skriptejä GUI-käyttäjien vuorovaikutukseen. Pysy kuulolla siihen asti ja ole yhteydessä Tecmintiin. Älä unohda antaa arvokasta palautetta kommenttiosiossa.