Como verificar a existência do argumento de entrada em um script de shell bash
Existem três maneiras diferentes:
Método 1: Usando o comando "teste"
O comando "teste", também conhecido como o comando "[", é um comando embutido em bash que testa para várias condições. Uma das condições que podemos testar usando o comando "teste" é se existe uma variável ou não. Aqui está um código de exemplo para verificar se existe um argumento de entrada usando o comando "teste":
#!/BIN/BASH
Se [-z "$ 1"]
então
eco "o argumento de entrada está faltando."
saída 1
fi
eco "o argumento de entrada existe."
Aqui a opção "-z" é usada com o comando "teste" para verificar se o argumento de entrada é uma string vazia ou não. O script produzirá uma mensagem de erro e sairá com um código de status de 1 se o argumento de entrada for uma string vazia. Caso contrário, o script continuará executando, abaixo, eu forneci e a entrada de argumentos para o código, para exibir a mensagem de existência de entrada do argumento:
Método 2: Usando a variável "$#"
O "$#" A variável armazena o número de argumentos de entrada passados para um script. Se o script espera pelo menos um argumento de entrada, podemos verificar se o "$#" A variável é maior que zero. Aqui está um exemplo de código para verificar se pelo menos um argumento de entrada existe usando o "$#" variável:
#!/BIN/BASH
Se [$# -EQ 0]
então
eco "o argumento de entrada está faltando."
saída 1
fi
eco "o argumento de entrada existe."
Aqui o “-EQ” O operador é usado para verificar se o "$#" A variável é igual a zero ou não e se a variável "$#" for igual a zero, o script exibirá uma mensagem de erro e sairá com um código de status de 1. Caso contrário, o script continuará executando, abaixo, eu forneci e a entrada de argumentos para o código, para exibir a mensagem de existência de entrada do argumento:
Método 3: Usando a opção "-n"
O "-N" a opção é usada para verificar se uma variável não está vazia. Podemos usar esta opção para verificar se o argumento de entrada existe ou não. Abaixo, dei um código de exemplo que verifica se existe um argumento de entrada usando o "-N" opção:
#!/BIN/BASH
Se [-n "$ 1"]
então
eco "o argumento de entrada existe."
outro
eco "o argumento de entrada está faltando."
saída 1
fi
Aqui o "-N" A opção é usada para verificar se o argumento de entrada não está vazio e se o argumento de entrada não estiver vazio, o script exibirá uma mensagem de sucesso. Caso contrário, o script exibirá uma mensagem de erro e sairá com um código de status de 1, abaixo, eu forneci e a entrada de argumentos para o código, para que ele exiba a mensagem de existência de entrada do argumento:
Conclusão
Na shell script, verificar a existência de argumentos de entrada é uma etapa essencial para garantir que o script seja executado conforme o esperado. Podemos usar técnicas diferentes para verificar a existência de argumentos de entrada, como usar o comando "teste", a variável "$#" ou a opção "-n". Ao implementar essas técnicas, criamos scripts de shell mais robustos e confiáveis que podem lidar com argumentos de entrada.