Bash Hvis variabel er tom Gjør handlinger

Bash If Variable Is Empty Do Actions



Bash -skripting 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 utsagn for å se etter spesifikke forhold og utføre handlinger basert på resultatet.

Denne opplæringen vil vise deg hvordan du bruker betingede utsagn for å kontrollere om en variabel er tom og deretter utføre en handling etter det faktum. Slike handlinger kan omfatte looping av en blokk med kode til variabelen ikke er tom, avslutte eller ganske enkelt varsle brukeren om at variabelen er tom.







Før vi begynner, vil det være nyttig hvis du er kjent med grunnleggende Bash -skripting.



Bash Basic - Variabler 101

Variabler er kjernebyggesteiner i ethvert ekte programmeringsspråk, og Bash bruker variabler. Variabler er datacontainere 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 variabelen initialisert, kan du tilordne verdien til den ved å bruke et likhetstegn som:



#!/bin/bash

jeg er= ubuntu

Når den er deklarert og tildelt, kan du kalle den ved ganske enkelt å referere til den ved navn som:

#!/bin/bash

kastet ut $ i_am

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

MERK: Å referere til en variabel i både enkelt anførselstegn og doble anførselstegn gir forskjellige resultater. En variabel inne i enkelt anførselstegn vil bli en streng bokstavelig, mens det i et dobbelt anførsel blir behandlet med et variabelnavn.

Her er et eksempel:

Nå som vi har det grunnleggende om variabler i Bash, kan vi gå videre til betingelser og se etter en tom variabel.

For en detaljert veiledning om hvordan du lager bash -variabler, kan du vurdere ressursen nedenfor:

https://linuxhint.com/variables_bash/

Grunnleggende om bash - uttalelser

Hvis uttalelser er en annen grunnleggende programmeringsblokk og Bash ville være en lam uten dem. De lar oss utføre en handling hvis en betingelse er sann eller usann.

La oss ta en kort oppsummering av hvordan du bruker Bash hvis, hvis ... annet og hvis ... elif ... annet

Hvis S tatement

Den generelle syntaksen for bruk av en if -setning i Bash er som vist nedenfor:

#!/bin/bash

hvis {tilstand}

deretter

gjøre

være

Vi starter en if -setning med å kalle søkeordet if. Vi følger deretter med å spesifisere betingelsen for å sjekke. Tilstanden kan være et enkelt eller komplekst uttrykk så lenge det evalueres til sant eller usant.

Deretter angir vi nøkkelordet som spesifiserer kodeblokken som skal kjøres hvis tilstanden evalueres til sann.

Til slutt lukker vi if -setningen ved å bruke fi -søkeordet.

Hvis ... andre uttalelser

En bash if ... else -setning angir en ekstra handling hvis tilstanden evalueres til usann. Den generelle syntaksen er:

#!/bin/bash

hvis {tilstand}

deretter

gjøre

ellers

gjøre

være

Et eksempel på brukstilfelle

Tillat meg å bruke et enkelt eksempel for å illustrere bruken av if -setninger.

If -setningen er som vist nedenfor:

#!/bin/bash
på en=1
hvis [[ $ tall -gt5 ]]
deretter
kastet ut '$ taller større enn 5 '
ellers
kastet ut '$ taller mindre enn 5 '
være

Utgangen er som vist nedenfor:

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

Sjekk om utsagnene i detaljer nedenfor:

https://linuxhint.com/bash_conditional_statement/

Hvordan sjekke om variabelen er tom

En populær og enkel måte å kontrollere om en variabel er tom, er å bruke -z -alternativet i tilstandserklæringen.

-Z $ var returnerer true hvis en variabel er tom og usann hvis ikke.

Den generelle syntaksen for en slik test er:

#!/bin/bash
hvis [[ -Med $ var ]]
deretter
gjøre
ellers
gjøre
være

Eksempel Script

La oss illustrere et enkelt skript som emulerer cd -kommandoen og navigerer i den angitte katalogen.

Vurder skriptet nedenfor:

#!/bin/bash
kastet ut 'Skriv inn banen for å navigere til:'

lese_sti

samtidig som [[ -Med $ _sti ]];gjøre
kastet ut 'Oppgi en sti'
gjort
kastet ut 'Navigerer til$ _sti'
CD $ _sti

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

Skriptet starter med å be brukeren om å angi katalogen å navigere til. Den kontrollerer 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 sjekker om en variabel er tom ved å bruke -z -flagget. Dette sjekker om lengden på variabelen er 0 og hvis 0, variabelen er 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 setningen ovenfor med andre uttrykk for å lage et komplekst verktøy hvis variabelen er tom eller ikke.

Takk, og god Scripting -tid !!