Ako skontrolovať existenciu vstupného argumentu v skripte Bash Shell
Existujú tri rôzne spôsoby:
Metóda 1: Použitie príkazu „test“.
Príkaz „test“, známy aj ako príkaz „[“, je vstavaný príkaz v Bash, ktorý testuje rôzne podmienky. Jednou z podmienok, ktoré môžeme otestovať pomocou príkazu „test“, je, či premenná existuje alebo nie. Tu je príklad kódu na kontrolu, či existuje vstupný argument pomocou príkazu „test“:
#!/bin/bash
ak [ - S '1 dolár' ]
potom
ozvena 'Vstupný argument chýba.'
VÝCHOD 1
byť
ozvena 'Vstupný argument existuje.'
Tu sa možnosť „-z“ používa s príkazom „test“ na kontrolu, či je vstupný argument prázdny reťazec alebo nie. Ak je vstupným argumentom prázdny reťazec, skript vypíše chybové hlásenie a skončí so stavovým kódom 1. V opačnom prípade bude skript pokračovať vo vykonávaní, nižšie som uviedol a zadal argument pre kód, takže zobrazí správu o existencii vstupu argumentu:
Metóda 2: Použitie premennej „$#“.
The „$#“ premenná ukladá počet vstupných argumentov odovzdaných skriptu. Ak skript očakáva aspoň jeden vstupný argument, môžeme skontrolovať, či je „$#“ premenná je väčšia ako nula. Tu je príklad kódu na kontrolu, či existuje aspoň jeden vstupný argument pomocou „$#“ premenná:
#!/bin/bash
ak [ # $ -ekv 0 ]
potom
ozvena 'Vstupný argument chýba.'
VÝCHOD 1
byť
ozvena 'Vstupný argument existuje.'
Tu je '-ekv' operátor sa používa na kontrolu, či je „$#“ premenná sa rovná nule alebo nie a ak sa premenná „$#“ rovná nule, skript zobrazí chybové hlásenie a ukončí sa so stavovým kódom 1. V opačnom prípade bude skript pokračovať v vykonávaní, nižšie som uviedol a zadal argument pre kód, takže zobrazí správu o existencii vstupu argumentu:
Metóda 3: Použitie možnosti „-n“.
The '-n' možnosť sa používa na kontrolu, či premenná nie je prázdna. Túto možnosť môžeme použiť na kontrolu, či vstupný argument existuje alebo nie. Nižšie som uviedol príklad kódu, ktorý kontroluje, či existuje vstupný argument pomocou '-n' možnosť:
#!/bin/bashak [ -n '1 dolár' ]
potom
ozvena 'Vstupný argument existuje.'
inak
ozvena 'Vstupný argument chýba.'
VÝCHOD 1
byť
Tu, '-n' voľba sa používa na kontrolu, či vstupný argument nie je prázdny a ak vstupný argument nie je prázdny, skript zobrazí správu o úspechu. V opačnom prípade skript zobrazí chybové hlásenie a ukončí sa so stavovým kódom 1, nižšie som uviedol a zadal argument pre kód, takže zobrazí správu o existencii vstupu argumentu:
Záver
Pri skriptovaní shellu je kontrola existencie vstupných argumentov základným krokom na zabezpečenie toho, aby skript bežal podľa očakávania. Na kontrolu existencie vstupných argumentov môžeme použiť rôzne techniky, napríklad pomocou príkazu „test“, premennej „$#“ alebo možnosti „-n“. Implementáciou týchto techník vytvárame robustnejšie a spoľahlivejšie skripty shellu, ktoré dokážu spracovať vstupné argumenty.