Alternativ for å lese kommandoen:
Alternativ | Hensikt |
---|---|
-p | Det brukes til å gi en hjelpemelding for brukeren før inndata -ledeteksten. |
-s | Det brukes til å ta usynlige innspill fra brukeren. Dette alternativet brukes til å ta passord eller hemmelige data. Det kalles stille modus. |
-t | Det brukes til å sette tid på sekunder på å vente på å ta innspill fra brukeren. |
-n | Det brukes til å sette grensen for inngangstegn. |
Eksempel 1: Bruk av lesekommando uten variabel
Les -kommandoen kan brukes uten variabel. De $ Svar Variabel brukes til å lese inngangen hentet fra brukeren av lesekommandoen uten variabel. Lag en bash -fil med følgende skript for å vite hvordan du bruker lesekommandoen uten variabel.
#!/bin/bash
ekko "Hva er ditt favorittprogrammeringsspråk?""
# Ta innspill uten å definere variabel
lese
# Skriv ut inngangsverdien
ekko "Svaret ditt er $ Svar"
Produksjon:
Følgende utgang vises etter å ha utført skriptet ovenfor.
Eksempel-2: Bruke enkel lesekommando
Lag en bash -fil med følgende skript for å vite hvordan du bruker lesekommandoen med en variabel. Etter å ha kjørt skriptet, vil programmet vente på brukerinngangen. Når brukeren skriver ut dataene og trykker på Enter, blir dataene lagret i svaret variabel. Verdien av svar Variabel vil bli skrevet ut senere.
#!/bin/bash
ekko -n "Hva er din favorittmat:"
# Tildel inngangsverdien til en variabel
Les svar
# Skriv ut verdien på variabelen
ekko "Åh! du liker $ svar!""
Produksjon:
Følgende utgang vises etter å ha utført skriptet ovenfor.
Eksempel-3: Bruke lesekommando med alternativer
Lag en bash -fil med følgende skript for å vite hvordan du bruker både -p- og -s -alternativene sammen i bash -skriptet. I dette eksemplet vil brukernavnet og passordet bli hentet fra brukeren og sammenlignet med den spesielle verdien for å sjekke brukernavnet og passordet er gyldig eller ikke.
#!/bin/bash
# Skriv inn påloggingsinformasjonen din
Les -P 'Brukernavn:' Bruker
Les -SP 'Passord:' Pass
# Sjekk brukernavnet og passordet er gyldig eller ikke
if (($ user == "admin" && $ pass == "12345")))
deretter
ekko -e "\ nsuccessful innlogging"
ellers
ekko -e "\ nunsukcessful innlogging"
fi
Produksjon:
Følgende utgang vises etter å ha utført skriptet ovenfor.
Eksempel-4: Bruke lesekommando for å ta flere innganger
Flere innganger kan tas om gangen ved å bruke lesekommandoen med flere variabelnavn. I det følgende eksempel vil det bli tatt fire innganger i fire variabler ved å bruke lesekommandoen.
#!/bin/bash
# Tar flere innganger
ekko "Type fire navn på favorittprogrammeringsspråkene dine"
Les LAN1 LAN2 LAN3 LAN4
Echo "$ LAN1 er ditt førstevalg"
Echo "$ LAN2 er ditt andre valg"
Echo "$ LAN3 er ditt tredje valg"
Echo "$ lan4 er ditt fjerde valg"
Produksjon:
Følgende utgang vises etter å ha utført skriptet ovenfor.
Eksempel-5: Bruke lesekommando med tidsbegrensningen
Lag en bash-fil med følgende skript for å ta tidsbegrensede innspill fra brukeren. Her vil tiden telles om sekunder. I det følgende eksemplet vil programmet vente i 5 sekunder på brukerens innspill, og hvis brukeren ikke er i stand til å skrive inn dataene innen 5 sekunder, vil programmet avslutte uten verdi.
#!/bin/bash
# Ta innspill med tidsbegrensning
Les -T 5 -P "Skriv inn favorittfargen din:" Farge
# Skriv ut inngangsverdien
ekko $ farge
Produksjon:
Følgende utgang vises etter å ha utført skriptet ovenfor. Inngangsverdien er gitt i den første utførelsen, og i den andre utførelsen er det ikke gitt noen inngangsverdi innen 5 sekunder.
Eksempel -6: Bruk av lesekommando med -n -alternativet
Lag en bash -fil med følgende skript for å ta innspill av en bestemt lengde. I følge skriptet vil brukeren kunne oppgi maksimalt 15 tegn som inngang.
#!/bin/bash
Ekko "Skriv inn telefonnummeret ditt (maksimalt 15 tegn):"
# Ta innspill av maksimalt 15 tegn lang
Les -n 15 telefon
# Legg til en ny linje
ekko
# Skriv ut inngangsverdien
ekko "Telefonnummeret ditt er $ telefon"
Produksjon:
Følgende utgang vises etter å ha utført skriptet ovenfor.
Eksempel-7: Kontroller en tatt bane er fil eller katalog
Lag en bash -fil med følgende skript for å ta innløp en baneverdi fra terminalen og sjekk inngangsbanen er en katalog eller fil.
#!/bin/bash
# Ta baneverdien fra inngangen
Les -P "Skriv inn den gyldige banen:" Sti
# Kontroller inndataverdiene er en katalog eller ikke
hvis [-d $ sti]; deretter
Echo "$ Path er en katalog.""
# Kontroller inndataverdiene er en fil eller ikke
elif [-f "$ sti"]; deretter
ekko "$ bane er en fil.""
ellers
ekko "ugyldig sti.""
fi
Produksjon:
Følgende utgang vises etter å ha utført skriptet ovenfor.
Eksempel-8: Initialiser matrisen ved hjelp av Les-kommandoen
Array -variabelen kan deklareres og initialiseres ved å bruke lesekommandoen. Opprett en bash -fil med følgende skript for å vite hvordan du oppretter og initialiserer en matrise ved å bruke Read -kommandoen. Deretter alle elementer i matrisen, det første elementet i matrisen, de to første elementene, og det siste elementet i matrisen blir skrevet ut.
#!/bin/bash
Ekko "Angi fem numeriske verdier for matrisen med plass:"
# Les verdier for matrisen
Les -a Myarr
# Skriv ut alle arrayverdier
ekko $ myarr [@]
# Skriv ut den første verdien av matrisen
ekko $ myarr [0]
# Skriv ut de to første verdiene på matrisen
ekko $ myarr [@]: 0: 2
# Skriv ut den siste verdien av matrisen
ekko $ myarr [4]
Produksjon:
Følgende utgang vises etter å ha utført skriptet ovenfor.
Konklusjon:
Ulike bruksområder av lesekommandoen er vist i denne opplæringen ved å bruke flere eksempler for å hjelpe Bash -brukerne til å kjenne bruken av denne kommandoen riktig og bruke den på skriptet.