Repasse de parâmetros de um script a outro
Publicado por Fernando Rego (última atualização em 12/05/2016)
[ Hits: 3.755 ]
Homepage: http://qei.com.br/fernando.rego
Andei sofrendo em encontrar informações de como passar parâmetros de um script a outro, uma vez que um dos parâmetros era uma sentença. Bash traduz as aspas e repassa uma frase como vários parâmetros. Encontrei a solução e apresento meu script de passagem de erro em um script "biblioteca" chamado por outro script "principal".
Para invocar, seja direto no shell, seja por outro script, a sintaxe segue abaixo:
./throwErr.sh "Mensagem de erro" 30
O código "30" é opcional, mas deve ser entre 11 e 99.
# !/bin/bash
# Returns time in rounded minutes or hours
# Accepts time in seconds + optional err number between 11 and 99
# Author: Fernando Rego <fernando.rego@qei.com.br>
# Last update: 2016-04-13
# Default values
errno=1
# Programs
echo=/bin/echo
# Expected language
LANGUAGE=en.UTF-8 # inputs from shell (netstat, ifconfig, ping, etc) are expected in this language and charset
PARAMS=()
main() {
[ ${#PARAMS} -lt 1 ] && $echo -e "\n\t\e[01;31mSintax:\e[0m $0 \"Error message to be thrown in stderr\" [<errno 11-99>]\n" >&2 && exit 1
$echo ${PARAMS[0]} >&2
[ -n "${PARAMS[1]}" ] && [ ${PARAMS[1]} -gt 10 ] && [ ${PARAMS[1]} -lt 100 ] && errno=${PARAMS[1]}
exit $errno
}
for PARAM in "$@"; do
PARAMS+=("$PARAM")
done; main $PARAMS
Ativar serviço que está parado
Nenhum comentário foi encontrado.
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
ERRO: LAZARUS 4.2 64 no Linux MINT não entra mais apos ajustar desktop... (0)
Pergunta: Meu teclado não está respondendo direito como e consertar? (2)
Secure boot, artigo interessante, nada técnico. (6)
SQLITE não quer funcionar no LINUX LMDE6 64 com Lazaruz 4.2 64bit (n... (0)









