Sådan beder du Bash om brugerinput
Det er nemt at bede Bash om brugerinput. Du kan gøre det gennem 'læs' kommandoen. Lad os dele dette afsnit yderligere op for at diskutere nogle eksempler:
1. Den grundlæggende tilgang
Først skal du oprette et Bash-script og give det de eksekverbare tilladelser. Her bruger vi 'touch'-kommandoen til at oprette en '.sh'-fil. Brug derefter chmod til at give den eksekverbare tilladelse.
røre ved input.sh
chmod u+x input.sh
nano input.sh
Lad os nu oprette et script, der tager to numre fra brugeren og udføre tilføjelsen.
#!/bin/bash
ekko 'Giv et nummer'
Læs nummer1
ekko 'Giv et andet nummer'
Læs nummer 2
sum =$ ( ( num1 + num2 )
ekko 'Summen af $num1 og $um2 er $sum '
Her beder vi brugeren om at få tallene 'num1' og 'num2' for at behandle dem i sumvariablen for at udskrive deres sum. Kør endelig scriptet, og systemet vil bede dig om at indtaste to tal.
. / input.sh
2. Den avancerede tilgang
Lad os se på den avancerede anvendelse af 'læs'-kommandoen og oprette et script, der bestemmer outputtet baseret på brugerens input.
#!/bin/bashekko 'Indtast dit navn'
Læs navn
ekko 'Indtast din betegnelse:'
ekko '1. Manager'
ekko '2. Udvikler'
ekko '3. Indholdsforfatter'
Læs betegnelse
sag $betegnelse i
'Manager' )
afdeling = 'Ledelsesafdeling på 3. sal'
;;
'Udvikler' )
afdeling = 'Udviklingsafdeling i stueetagen'
;;
'Indholdsforfatter' )
afdeling = 'Indholdsafdeling på 2. sal'
;;
* )
afdeling = 'Ukendt indtastning, kontakt venligst HR'
;;
esac
ekko 'Navn: $navn '
ekko 'Betegnelse: $betegnelse '
ekko 'Afdeling: $afdeling '
Når du har kørt scriptet, skal du indtaste dit navn og betegnelse, og det producerer følgende output:
Tværtimod, hvis du indtaster en anden betegnelse end de givne muligheder, ville resultatet være:
Konklusion
At skrive Bash-scripts kan nogle gange være forvirrende. Brugere søger ofte efter metoden til at oprette en prompt i Bash for at få brugerinput. I betragtning af dette forklarede vi det samme i denne vejledning. Desuden brugte vi også eksemplerne på at bruge kommandoen 'læs' i grundlæggende og avancerede scripts, så du kan implementere det uden yderligere forespørgsler.