Ak je premenná Bash prázdna, vykonajte opatrenia

Bash If Variable Is Empty Do Actions



Bash skriptovanie je jednou z výhod používania Linuxu. Umožňuje nám vytvárať prispôsobené príkazy a nástroje na automatizáciu našich každodenných úloh. Rovnako ako väčšina programovacích jazykov, aj Bash nám poskytuje podmienené príkazy na kontrolu konkrétnych podmienok a vykonávanie akcií na základe výsledku.

Tento tutoriál vám ukáže, ako pomocou podmienených príkazov skontrolovať, či je premenná prázdna, a potom vykonať akciu. Takéto akcie môžu zahŕňať zacyklenie bloku kódu, kým premenná nie je prázdna, ukončite ju alebo jednoducho upozornite používateľa, že je premenná prázdna.







Predtým, ako začneme, bude užitočné, ak ste oboznámení so základným skriptovaním v jazyku Bash.



Bash Basic - premenné 101

Premenné sú základnými stavebnými kameňmi akéhokoľvek skutočného programovacieho jazyka a Bash používa premenné. Premenné sú dátové kontajnery používané na ukladanie hodnôt na použitie v neskorších častiach programu.



Na vytvorenie jednoduchej premennej v Bash používame názov premennej.





Napríklad:

#!/bin/bash

$ i_am

Akonáhle máte premennú inicializovanú, môžete jej priradiť hodnotu pomocou znamienka rovnosti ako:



#!/bin/bash

som= ubuntu

Hneď ako bude deklarovaný a priradený, môžete ho zavolať jednoduchým odkazom na meno ako:

#!/bin/bash

zahodil $ i_am

Tým sa vráti hodnota uložená v premennej, ako je to znázornené na obrázku nižšie.

POZNÁMKA: Odkazovanie na premennú v jednoduchých úvodzovkách aj v úvodzovkách prináša rôzne výsledky. Premenná v jednoduchých úvodzovkách sa stane doslovným reťazcom, zatiaľ čo v dvojitých úvodzovkách bude spracovaná názov premennej.

Tu je príklad:

Teraz, keď máme základy premenných v Bash, môžeme pristúpiť k podmienkam a kontrole prázdnej premennej.

Podrobný návod na vytváranie premenných bash nájdete v nižšie uvedenom zdroji:

https://linuxhint.com/variables_bash/

Bash Basics - If Statements

Ak sú vyhlásenia ďalším základným programovacím blokom a Bash by bol bez nich mrzák. Umožňujú nám vykonať akciu, ak je podmienka pravdivá alebo nepravdivá.

Poďme si rýchlo zhrnúť, ako používať Bash, ak, ak ... inak a ak ... elif ... inak

Ak S tatement

Všeobecná syntax na používanie príkazu if v jazyku Bash je uvedená nižšie:

#!/bin/bash

keby {podmienkou}

potom

urobiť

byť

Príkaz if začíname zavolaním kľúčového slova if. Potom nasledujeme zadaním podmienky na kontrolu. Podmienka môže byť jednoduchý alebo komplexný výraz, pokiaľ je vyhodnotená ako pravdivá alebo nepravdivá.

Ďalej nastavíme kľúčové slovo, ktoré špecifikuje blok kódu, ktorý sa má spustiť, ak je podmienka vyhodnotená ako pravdivá.

Nakoniec zatvoríme príkaz if pomocou kľúčového slova fi.

Ak ... iné vyhlásenia

Príkaz bash if ... else určuje ďalšiu akciu, ak je podmienka vyhodnotená ako nepravdivá. Všeobecná syntax je:

#!/bin/bash

keby {podmienkou}

potom

urobiť

inak

urobiť

byť

Príklad prípadu použitia

Dovoľte mi použiť jednoduchý príklad na ilustráciu použitia príkazov if.

Príkaz if je nasledujúci:

#!/bin/bash
na jeden=1
keby [[ $ num -gt5 ]]
potom
zahodil '$ numje väčšia ako 5 '
inak
zahodil '$ numje menší ako 5 '
byť

Výstup je nasledujúci:

Pretože teraz máme základy príkazov if vyriešené, pokračujme v tomto návode.

Skontrolujte, či sú nižšie uvedené podrobnosti:

https://linuxhint.com/bash_conditional_statement/

Ako skontrolovať, či je premenná prázdna

Populárny a jednoduchý spôsob, ako zistiť, či je premenná prázdna, je použiť v príkaze podmienku možnosť -z.

Parameter -z $ var vráti hodnotu true, ak je premenná prázdna, a hodnotu false, ak nie je.

Všeobecná syntax pre takýto test je:

#!/bin/bash
keby [[ -S $ var ]]
potom
urobiť
inak
urobiť
byť

Príklad skriptu

Ukážme si jednoduchý skript, ktorý emuluje príkaz cd a pohybuje sa v určenom adresári.

Zvážte nasledujúci skript:

#!/bin/bash
zahodil 'Zadajte cestu, na ktorú sa chcete nechať navigovať:'

čítať_cesta

kým [[ -S $ _path ]];urobiť
zahodil „Zadajte cestu“
hotový
zahodil „Navigácia do$ _path'
CD $ _path

Akonáhle vykonáme vyššie uvedený dotaz, dostaneme výstup, ako je uvedené nižšie.

Skript začína požiadavkou, aby používateľ zadal adresár, do ktorého sa má navigovať. Potom skontroluje, či je premenná prázdna. Ak je prázdny, rekurzívne sa pýta používateľa na cestu, kým premenná nie je prázdna.

Akonáhle je cesta k dispozícii, prejde do nastaveného adresára a vytlačí stav.

Záver

Tento krátky návod vám ukázal, ako pomocou príznaku -z skontrolovať, či je premenná prázdna. Skontroluje sa, či je dĺžka premennej 0 a ak 0, je premenná prázdna. To môže byť veľmi silné, keď potrebujete, aby hodnota premennej bola pravdivá, než budete pokračovať.

Vyššie uvedený príkaz môžete tiež skombinovať s inými výrazmi a vytvoriť tak komplexný nástroj, ak je premenná prázdna alebo nie.

Ďakujem a prajem príjemný skriptovací čas !!