logo

Bash Patikrinkite, ar nustatytas kintamasis

Kintamasis dažnai vadinamas langeliu, kuriame yra pavadinimas ir turinys. Paprasta komanda, pvz., 'echo Hello, $Var_Name' išspausdins 'Hello...the kintamojo reikšmė, kaip apibrėžta'. „Bash“ nieko nespausdins, jei langelis tuščias arba nesukurtas. Štai kodėl kuriant bet kokį bash scenarijų svarbu įsitikinti, ar kintamasis nustatytas tinkamai, ar ne.

Kintamuosius galima suskirstyti į dvi dalis:

    Apibrėžti kintamieji
    Kintamieji, kurie yra tinkamai sukurti arba inicijuoti, yra žinomi kaip apibrėžti kintamieji. Jie gali turėti nulinę reikšmę arba tuščią eilutę.Neapibrėžti kintamieji
    Kintamieji, kurie niekada nėra sukurti ar inicijuojami, yra žinomi kaip neapibrėžti kintamieji.

Norėdami patvirtinti, ar Bash Scripting kintamasis nustatytas, ar ne, galime naudoti -v var arba -z ${var} parinktys kaip išraiška su sąlyginės komandos „if“ deriniu.

Sintaksė

Toliau pateikiamos loginės išraiškos, kurią galima naudoti norint patikrinti, ar kintamasis nustatytas, sintaksės:

 [[ -v Variable_Name ]] [[ -z Variable_Name ]] 

Būlio išraiška grąžina „Tiesa“, jei kintamasis nustatytas, ir „False“, jei kintamasis nenustatytas.

primityvūs duomenų tipai Java

Toliau pateikiami pavyzdžiai, kaip patikrinti, ar kintamasis nustatytas, ar ne:

Naudojant -v parinktį

 #!/bin/bash #Script to check whether a variable is set or not using -v option A=100 #A: variable is set. if [[ -v A ]]; then echo 'Variable having name 'A' is already set.' else echo 'Variable having name 'A' is not set.' fi #B: variable is not set if [[ -v B ]]; then echo 'Variable having name 'B' is already set.' else echo 'Variable having name 'B' is not set.' fi 

Išvestis

Bash Patikrinkite, ar nustatytas kintamasis

Čia kintamasis „A“ yra apibrėžtas ir jam priskiriama 100 reikšmė, todėl jis laikomas „nustatyti kintamuoju“. Kintamajam „B“ neapibrėžėme ir nepriskyrėme jokios reikšmės. Dėl to kintamasis „B“ nėra laikomas „nustatyti kintamuoju“.

Naudojant -z parinktį

 #!/bin/bash #Script to check whether a variable is set or not using -z option A=100 #A: variable is set. if [[ -z ${A} ]]; then echo 'Variable having name 'A' is not set.' else echo 'Variable having name 'A' is already set.' fi #B: variable is not set if [[ -z ${B} ]]; then echo 'Variable having name 'B' is not set.' else echo 'Variable having name 'B' is already set.' fi 

Išvestis

Bash Patikrinkite, ar nustatytas kintamasis

Pastaba:Yra skirtumas tarp nenustatyto kintamojo ir kintamojo, kurio reikšmė nulinė.

Peržiūrėkite šį pavyzdį, rodantį, kad kintamasis su nuline verte gali būti nustatytasis kintamasis.

Pavyzdys

 VAR='' #VAR is set if [ -z ${VAR+x} ]; then echo ''VAR' is unset'; else echo ''VAR' is set, its content is '$VAR''; fi #Var is not set if [ -z ${Var+x} ]; then echo ''Var' is unset'; else echo ''Var' is set, its content is '$Var''; fi 

Išvestis

Bash Patikrinkite, ar nustatytas kintamasis

Tai yra dažniausiai naudojami metodai, kuriuos galima naudoti norint patikrinti, ar kintamasis nustatytas, ar ne.

kiek uncijų yra 10 mililitrų