Sådan bruges xmessage-appen inde i shell-scripts



Prøv Vores Instrument Til At Fjerne Problemer

Hvis du har brugt betydelig tid på at skrive scripts til Bash- eller tcsh-miljøerne, har du mere end sandsynligt brugt ekkokommandoen til at videregive data til brugeren. Denne kommando kan ekko miljøvariabler såvel som meddelelser, men der er et alternativ, hvis du blot prøver at sende en besked til brugeren, hvis du skriver, siger et installationsscript. Dette alternativ gør det muligt for din besked at blive vist i et vindue, der er betydeligt mere brugervenligt. Det skal også virke mere moderne under mange omstændigheder.



Teknisk set kan kommandoen xmessage desuden bruges til at overføre miljøvariabler til brugeren. Syntaksen er identisk med ekko, så hvis du allerede er vant til at bruge denne kommando, skal du ikke have yderligere problemer med at bruge xmessage i stedet.



Metode 1: Brug af kommandoen xmessage i stedet for ekko

Mens du kunne bruge disse kommandoer fra en køredialogboks, der blev åbnet ved at holde Windows-tasten nede og trykke på R eller endda CLI-prompten, er de mest nyttige indefra i et script. Sig, at du ønskede at sætte et installationsscript på pause og bede brugeren om input. Føj denne linje til dit script:



xmessage Tryk på knappen OK for at fortsætte.

Når dit script udføres, genererer du en dialogboks til brugeren.

xmessagea



Kommandoen kunne også bruges til at ekko en miljøvariabel under udførelsen af ​​enhver type script. Tag for eksempel, hvis du havde ønsket at få vist den kode, der blev brugt af brugerens aktuelle prompt. Kommandoen xmessage $ PS1 genererer output baseret på dette, selvom det kun fungerer, hvis brugeren udførte dette fra et terminalvindue eller tillod deres filhåndtering at gøre det.

xmessageb

Metode 2: Oprettelse af knapper med xmessage

Scriptprogrammerere kan bruge xmessage til at oprette knapper, som brugeren kan vælge. I betragtning af følgende linje:

xmessage 'Kan nogen høre mig?' -knapper ja, nej

xmessagec

Tekst, der skal vises i feltet, er vedlagt citater. Kommandoen tack knapper indeholder derefter kommaseparerede knapetiketter efter den. Udgangsværdier er lig med 100 plus antallet af tryk på knappen, så det er muligt at finde ud af, hvilken brugeren valgte. Du kan oprette ekstra knapper ud over de grundlæggende to ligesom dette:

xmessage 'Husker du denne prompt?' -knapper afbryder, forsøger igen, mislykkes

besked

Det gør det lettere at skrive Bash og tcsh-scripts for dem, der ikke ønsker at arbejde med en terminal.

2 minutter læst