Com comprovar l'existència d'un argument d'entrada en un script Bash Shell
Hi ha tres maneres diferents:
Mètode 1: utilitzant l'ordre 'prova'.
L'ordre 'prova', també coneguda com l'ordre '[', és una ordre integrada a Bash que prova diverses condicions. Una de les condicions que podem provar amb l'ordre 'prova' és si una variable existeix o no. Aquí teniu un exemple de codi per comprovar si existeix un argument d'entrada mitjançant l'ordre 'prova':
#!/bin/bash
si [ -Amb '$1' ]
aleshores
eco 'Falta l'argument d'entrada'.
sortida 1
ser
eco 'L'argument d'entrada existeix'.
Aquí s'utilitza l'opció '-z' amb l'ordre 'prova' per comprovar si l'argument d'entrada és una cadena buida o no. L'script mostrarà un missatge d'error i sortirà amb un codi d'estat 1 si l'argument d'entrada és una cadena buida. En cas contrari, l'script continuarà executant-se, a continuació he proporcionat un argument d'entrada per al codi perquè mostri el missatge d'existència de l'entrada de l'argument:
Mètode 2: Ús de la variable '$#'.
El “$#” La variable emmagatzema el nombre d'arguments d'entrada passats a un script. Si l'script espera almenys un argument d'entrada, podem comprovar si el “$#” variable és major que zero. Aquí hi ha un exemple de codi per comprovar si existeix almenys un argument d'entrada utilitzant el “$#” variable:
#!/bin/bash
si [ $# -eq 0 ]
aleshores
eco 'Falta l'argument d'entrada'.
sortida 1
ser
eco 'L'argument d'entrada existeix'.
Aquí el '-eq' s'utilitza l'operador per comprovar si el “$#” La variable és igual a zero o no i si la variable '$#' és igual a zero, l'script mostrarà un missatge d'error i sortirà amb un codi d'estat 1. En cas contrari, l'script continuarà executant-se, a continuació he proporcionat i introduït argument per al codi perquè mostri el missatge d'existència de l'entrada de l'argument:
Mètode 3: utilitzant l'opció '-n'.
El '-n' s'utilitza per comprovar si una variable no està buida. Podem utilitzar aquesta opció per comprovar si l'argument d'entrada existeix o no. A continuació, he donat un exemple de codi que verifica si existeix un argument d'entrada utilitzant el '-n' opció:
#!/bin/bashsi [ -n '$1' ]
aleshores
eco 'L'argument d'entrada existeix'.
altra cosa
eco 'Falta l'argument d'entrada'.
sortida 1
ser
Aquí, el '-n' s'utilitza per comprovar si l'argument d'entrada no està buit i si l'argument d'entrada no està buit, l'script mostrarà un missatge d'èxit. En cas contrari, l'script mostrarà un missatge d'error i sortirà amb un codi d'estat de 1, a continuació he proporcionat i introdueix l'argument del codi perquè mostri el missatge d'existència de l'entrada de l'argument:
Conclusió
En els scripts d'intèrpret d'ordres, comprovar l'existència d'arguments d'entrada és un pas essencial per garantir que l'script s'executa com s'esperava. Podem utilitzar diferents tècniques per comprovar l'existència d'arguments d'entrada, com ara utilitzar l'ordre “test”, la variable “$#” o l'opció “-n”. Amb la implementació d'aquestes tècniques, creem scripts d'intèrpret d'ordres més robusts i fiables que poden gestionar arguments d'entrada.