Hvordan lage enkle grafiske Shell-skript med Zenity på Linux

Innholdsfortegnelse:

Hvordan lage enkle grafiske Shell-skript med Zenity på Linux
Hvordan lage enkle grafiske Shell-skript med Zenity på Linux

Video: Hvordan lage enkle grafiske Shell-skript med Zenity på Linux

Video: Hvordan lage enkle grafiske Shell-skript med Zenity på Linux
Video: Maximize your Server RAID Performance - YouTube 2024, Mars
Anonim
Zenity legger til grafiske grensesnitt til shell-skript med en enkelt kommando. Shell-skript er en fin måte å automatisere repeterende oppgaver på, men de er normalt begrenset til terminalen. Zenity bringer dem ut av terminalen og på skrivebordet.
Zenity legger til grafiske grensesnitt til shell-skript med en enkelt kommando. Shell-skript er en fin måte å automatisere repeterende oppgaver på, men de er normalt begrenset til terminalen. Zenity bringer dem ut av terminalen og på skrivebordet.

Vi har gitt en introduksjon til shell scripting i fortiden. Du trenger ikke å være programmerer for å komme i gang med shell-skript - de krever lite mer enn kunnskap om Linux-terminalkommandoer.

Å få Zenity

Zenity kommer som standard med Ubuntu. Hvis du bruker et Ubuntu-derivat, for eksempel Kubuntu, må du kanskje installere det manuelt med følgende kommando:

sudo apt-get install zenity

Zenity er en del av GNOME, så det bør allerede være inkludert på Linux-distribusjoner som bruker GNOME-skrivebordet. Kontroller pakkeadministratoren din for Zenity pakke hvis du ikke har det.

Bruke Zenity

Du kan leke med Zenity fra terminalen. La oss si at du vil opprette et feilvindu når et problem oppstår med shell-skriptet ditt. Her er et eksempel på kommando du kan bruke:

zenity –error –title=”An Error Occurred” –text=”A problem occurred while running the shell script.”

Kjør kommandoen, og du vil se et vindu med meldingen.
Kjør kommandoen, og du vil se et vindu med meldingen.
Sett denne kommandoen i shell-skriptet ditt på riktig sted, og du vil ha en grafisk feilmelding. Du kan også bruke variabler til å inkludere mer informasjon om feilen.
Sett denne kommandoen i shell-skriptet ditt på riktig sted, og du vil ha en grafisk feilmelding. Du kan også bruke variabler til å inkludere mer informasjon om feilen.

La oss si at du vil stille et ja eller nei spørsmål. Du kan bruke en kommando som denne:

zenity –question –title=”Query” –text=”Would you like to run the script?”

Du kan fange ja eller nei respons i shell-skriptet ditt og utføre forskjellige kommandoer basert på hvilken knapp brukeren klikker på.
Du kan fange ja eller nei respons i shell-skriptet ditt og utføre forskjellige kommandoer basert på hvilken knapp brukeren klikker på.
Det er også en dialogboksen for inntasting av tekst:
Det er også en dialogboksen for inntasting av tekst:

zenity –entry –title=”Favorite Website” –text=”What is your favorite website?”

Fang brukerens innspill i et shell-skript, og du kan lagre det som en variabel.
Fang brukerens innspill i et shell-skript, og du kan lagre det som en variabel.
Det er også en filvalg, kalender og andre typer dialoger. For en fullstendig liste over dialogtyper og deres alternativer, se Zenitys manuelle side.
Det er også en filvalg, kalender og andre typer dialoger. For en fullstendig liste over dialogtyper og deres alternativer, se Zenitys manuelle side.

Et eksempelskript

La oss prøve å bruke Zenity til å lage et enkelt grafisk skalskript. Med bare tre kommandoer kan vi lage et grafisk timerprogram:

#!/bin/bash # This script asks the user for a time, waits the specified amount # of time, and shows an alert dialog.

TIME=$(zenity –entry –title=”Timer” –text=”Enter a duration for the timer.

Use 5s for 5 seconds, 10m for 10 minutes, or 2h for 2 hours.”)

sleep $TIME

zenity –info –title=”Timer Complete” –text=”The timer is over.

It has been $TIME.”

Image
Image

Vi bruker litt ekstra triks her. Vi får verdien av TIME-variabelen fra den første zenity-kommandoen, og mat den til søvnkommandoen. Vi bruker også / n for å lage nye tekstlinjer i Zenity-dialogene.

Etter lagring av shell-skriptet og kjøring av chmod + x kommandoen på den for å gi den kjørbare tillatelser, kan vi starte den.

Image
Image

Skriv inn en varighet, og skriptet vil bruke standarden sove kommando å telle ned i bakgrunnen. Når søvnkommandoerens timer er ferdig, vil skriptet vise meldingsinformasjonen.

Du kan opprette en skrivebords- eller panelgenvei for dette skriptet og kjøre det uten å berøre terminalen.
Du kan opprette en skrivebords- eller panelgenvei for dette skriptet og kjøre det uten å berøre terminalen.

Dette er bare å skrape overflaten av det du kan gjøre med zenity; du kan bruke den til å gjøre mye mer kompliserte programmer. Hvis du leter etter mer informasjon om shell scripting, kan du se vår guide til bruk for sløyfer i shell-skript.

Anbefalt: