Hvordan bruke xmessage-appen inne i shell-skript



Prøv Instrumentet Vårt For Å Eliminere Problemer

Hvis du har brukt betydelig tid på å skrive skript for Bash- eller tcsh-miljøene, har du mer enn sannsynlig brukt ekkokommandoen til å overføre data til brukeren. Denne kommandoen kan ekko miljøvariabler så vel som meldinger, men det er et alternativ hvis du bare prøver å sende en melding til brukeren hvis du skrev, for eksempel et installeringsskript. Dette alternativet gjør at meldingen din kan vises i et vindu, som er betydelig mer brukervennlig. Det bør også fremstå som mer moderne under mange omstendigheter.



Teknisk sett kan kommandoen xmessage i tillegg brukes til å overføre miljøvariabler til brukeren. Syntaksen er identisk med ekko, så hvis du allerede er vant til å bruke denne kommandoen, bør du ikke ha noen ekstra problemer med å bruke xmessage i stedet.



Metode 1: Bruk av kommandoen xmessage i stedet for ekko

Mens du kan bruke disse kommandoene fra en kjøredialogboks som åpnes ved å holde nede Windows-tasten og trykke på R eller til og med CLI-ledeteksten, er de mest nyttige innenfra et skript. Si at du ønsket å sette et installasjonsskript på pause og be brukeren om inntasting. Legg til denne linjen i skriptet:



xmessage Trykk på OK-knappen for å fortsette.

Når skriptet kjøres, genererer du en dialogboks for brukeren.

xmessagea



Kommandoen kan også brukes til å ekko en miljøvariabel under utførelsen av alle typer skript. Ta for eksempel hvis du hadde ønsket å vise koden som ble brukt av brukerens nåværende ledetekst. Kommandoen xmessage $ PS1 genererer utgang basert på dette, selv om det bare vil fungere hvis brukeren utførte dette fra et terminalvindu eller tillot filbehandleren å gjøre det.

xmessageb

Metode 2: Opprette knapper med xmessage

Skriptprogrammerere kan bruke xmessage til å lage knapper som brukeren kan velge. Tatt i betraktning følgende linje:

xmessage 'Kan noen høre meg?' -knapper ja, nei

xmessagec

Teksten som skal vises i boksen, er vedlagt anførselstegn. Tack-knappene-kommandoen inneholder deretter kommaavgrensede knappetiketter etter den. Utgangsverdier er lik 100 pluss antall trykk på knappen, så det er mulig å finne ut hvilken brukeren valgte. Du kan lage ekstra knapper utover de to grunnleggende akkurat slik:

xmessage 'Husker du denne meldingen?' -knapper Avbryt, Prøv på nytt, mislykkes

xmeldt

Det gjør det lettere å skrive Bash og tcsh-skript for de som ikke vil jobbe med en terminal.

2 minutter lest