Come verificare l'esistenza dell'argomento input in uno script bash shell

Come verificare l'esistenza dell'argomento input in uno script bash shell
Bash Shell Scripting è un potente strumento per automatizzare le attività ripetitive ed eseguire operazioni complesse sulla riga di comando. Uno dei concetti fondamentali negli script di shell è l'accettazione di argomenti di input dall'utente o da altri script. Quando si tratta di argomenti di input, è essenziale verificare se l'argomento di input esiste o meno per evitare comportamenti imprevisti nello script. Questo articolo discuterà di diversi modi per verificare l'esistenza di argomenti di input in uno script bash shell.

Come verificare l'esistenza dell'argomento input in uno script bash shell

Ci sono tre modi diversi:

  1. Usando il comando "test"
  2. Utilizzando la variabile "$#"
  3. Usando l'opzione "-n"

Metodo 1: usando il comando "test"

Il comando "Test", noto anche come comando "[", è un comando incorporato in bash che prova per varie condizioni. Una delle condizioni che possiamo testare usando il comando "test" è se esiste una variabile o meno. Ecco un codice di esempio per verificare se esiste un argomento di input usando il comando "test":

#!/Bin/Bash
if [-z "$ 1"]
Poi
eco "L'argomento input manca."
Uscita 1
fi
Echo "L'argomento input esiste."

Qui l'opzione "-z" viene utilizzata con il comando "test" per verificare se l'argomento di input è una stringa vuota o no. Lo script emetterà un messaggio di errore ed uscirà con un codice di stato di 1 se l'argomento di input è una stringa vuota. Altrimenti, lo script continuerà a eseguire, di seguito ho fornito e input Argomento per il codice in modo da visualizzare il messaggio di esistenza di input dell'argomento:

Metodo 2: usando la variabile "$#"

IL "$#" La variabile memorizza il numero di argomenti di input passati a uno script. Se lo script si aspetta almeno un argomento input, possiamo verificare se il "$#" La variabile è maggiore di zero. Ecco un codice di esempio per verificare se esiste almeno un argomento di input usando il "$#" variabile:

#!/Bin/Bash
if [$# -eq 0]
Poi
eco "L'argomento input manca."
Uscita 1
fi
Echo "L'argomento input esiste."

Qui il "-Eq" L'operatore viene utilizzato per verificare se il "$#" La variabile è uguale a zero o no e se la variabile "$#" è uguale a zero, lo script visualizzerà un messaggio di errore ed uscirà con un codice di stato di 1. Altrimenti, lo script continuerà a eseguire, di seguito ho fornito e input Argomento per il codice in modo da visualizzare il messaggio di esistenza di input dell'argomento:

Metodo 3: usando l'opzione "-n"

IL "-N" l'opzione viene utilizzata per verificare se una variabile non è vuota. Possiamo usare questa opzione per verificare se l'esistenza dell'argomento di input. Di seguito ho fornito un codice di esempio che controlla se esiste un argomento di input usando il "-N" opzione:

#!/Bin/Bash
if [-n "$ 1"]
Poi
Echo "L'argomento input esiste."
altro
eco "L'argomento input manca."
Uscita 1
fi

Qui, il "-N" L'opzione viene utilizzata per verificare se l'argomento di input non è vuoto e se l'argomento di input non è vuoto, lo script visualizzerà un messaggio di successo. Altrimenti, lo script visualizzerà un messaggio di errore ed uscirà con un codice di stato di 1, di seguito ho fornito e input Argomento per il codice in modo da visualizzare il messaggio di esistenza di input dell'argomento:

Conclusione

Negli script shell, il controllo dell'esistenza di argomenti di input è un passaggio essenziale per garantire che lo script funzioni come previsto. Possiamo utilizzare diverse tecniche per verificare l'esistenza di argomenti di input, come l'uso del comando "test", la variabile "$#" o l'opzione "-n". Implementando queste tecniche, creiamo script di shell più robusti e affidabili in grado di gestire argomenti di input.