Bash hvis variabel er tom, gjør handlinger

Bash hvis variabel er tom, gjør handlinger
Bash Scripting er en av fordelene ved å bruke Linux. Det lar oss lage tilpassede kommandoer og verktøy for å automatisere våre daglige oppgaver. Som de fleste programmeringsspråk, gir Bash oss betingede uttalelser for å se etter spesifikke forhold og utføre handlinger basert på resultatet.

Denne opplæringen vil vise deg hvordan du bruker betingede utsagn for å sjekke om en variabel er tom og deretter utføre en handling etter faktum. Slike handlinger kan inkludere å sløyfe en kodeblokk til variabelen ikke er tom, slutte eller bare varsle brukeren om at variabelen er tom.

Før vi kommer i gang, vil det være nyttig hvis du er kjent med Basic Bash Scripting.

Bash Basic - Variabler 101

Variabler er kjerneblokker av ethvert ekte programmeringsspråk, og Bash bruker variabler. Variabler er databeholdere som brukes til å lagre verdier for bruk i senere deler av programmet.

For å lage en enkel variabel i bash, bruker vi navnet på variabelen.

For eksempel:

#!/bin/bash
$ i_am

Når du har initialisert variabelen, kan du tilordne verdien til den ved å bruke et like tegn som:

#!/bin/bash
i_am = ubuntu

Når den er blitt erklært og tildelt, kan du ringe det ved å henvise til det ved navn som:

#!/bin/bash
ekko $ i_am

Dette vil returnere verdien som er lagret i variabelen, som vist på skjermdumpen nedenfor.

MERK: Å referere til en variabel i både enkelt sitater og dobbelt sitater returnerer forskjellige resultater. En variabel inne i enkelt sitater vil bli en streng bokstavelig, mens det i et dobbelt sitat får behandlingen av et variabelt navn.

Her er et eksempel:

Nå som vi har det grunnleggende om variabler i bash, kan vi fortsette til betingelser og sjekke for en tom variabel.

For en detaljert guide for hvordan du lager bashvariabler, bør du vurdere ressursen nedenfor:

https: // linuxhint.com/variables_bash/

Basics basics - hvis uttalelser

Hvis uttalelser er en annen grunnleggende programmeringsblokk og bash ville være en krøpling uten dem. De lar oss utføre en handling hvis en tilstand er sann eller falsk.

La oss ta en rask oversikt over hvordan vi bruker bash hvis, hvis ... ellers og hvis ... elif ... ellers

If Statement

Den generelle syntaksen for bruk av en IF -uttalelse i bash er som vist nedenfor:

#!/bin/bash
hvis tilstand
deretter
gjøre
fi

Vi starter en IF -uttalelse ved å ringe IF -nøkkelordet. Vi følger deretter med å spesifisere tilstanden for å sjekke. Tilstanden kan være et enkelt eller et komplekst uttrykk så lenge den evaluerer til sant eller usant.

Deretter setter vi nøkkelordet som spesifiserer kodeblokken for å kjøre hvis tilstanden evalueres til sann.

Til slutt lukker vi IF -setningen ved hjelp av FI -nøkkelordet.

Hvis ... ellers uttalelser

En bash hvis ... ellers uttalelse spesifiserer en ekstra handling hvis tilstanden evalueres til falsk. Den generelle syntaksen er:

#!/bin/bash
hvis tilstand
deretter
gjøre
ellers
gjøre
fi

Et eksempel på bruk

Tillat meg å bruke et enkelt eksempel for å illustrere bruken av IF -utsagn.

IF -uttalelsen er som vist nedenfor:

#!/bin/bash
num = 1
if [[$ num -GT5]]
deretter
ekko "$ num er større enn 5"
ellers
ekko "$ num er mindre enn 5"
fi

Utgangen er som vist nedenfor:

Siden vi nå har det grunnleggende om uttalelser strykes ut, la oss fortsette med denne opplæringen.

Sjekk om uttalelser i detaljer nedenfor:

https: // linuxhint.com/bash_conditional_statement/

Hvordan sjekke om variabelen er tom

En populær og enkel måte å sjekke om en variabel er tom er å bruke -z -alternativet i tilstandsuttalelsen.

-Z $ var returnerer sant hvis en variabel er tom og usant hvis ikke.

Den generelle syntaksen for en slik test er:

#!/bin/bash
if [[-z $ var]]
deretter
gjøre
ellers
gjøre
fi

Eksempelskript

La oss illustrere et enkelt skript som emulerer CD -kommandoen og navigerer den spesifiserte katalogen.

Tenk på skriptet nedenfor:

#!/bin/bash
ekko "Angi banen for å navigere til:"
Les _Path
mens [[-z $ _Path]]; gjøre
ekko "Vennligst gi en sti"
Ferdig
ekko "Navigering til $ _Path"
CD $ _PATH

Når vi har utført spørringen ovenfor, får vi utdataene som vist nedenfor.

Skriptet starter med å be brukeren om å legge inn katalogen om å navigere til. Den sjekker deretter om variabelen er tom. Hvis den er tom, ber den rekursivt brukeren om en bane til variabelen ikke er tom.

Når banen er tilgjengelig, navigerer den til den angitte katalogen og skriver ut statusen.

Konklusjon

Denne korte opplæringen viste deg hvordan du kan sjekke om en variabel er tom ved hjelp av -z -flagget. Dette sjekker om lengden på variabelen er 0, og hvis 0, er variabelen tom. Dette kan være veldig kraftig når du trenger verdien av en variabel for å være sann før du fortsetter.

Du kan også kombinere uttalelsen ovenfor med andre uttrykk for å lage et komplekst verktøy hvis variabelen er tom eller ikke.

Takk, og lykkelig skriptetid!!