Repasse de parâmetros de um script a outro
Publicado por Fernando Rego (última atualização em 12/05/2016)
[ Hits: 3.823 ]
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
ipshow - exibir informações de sua rede
Identificar,matar e Iniciar novo Processo
Altera /etc/fstab colocando o parâmetro acl nas partições ext3.
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Anúncio do meu script de Pós-Instalação do Ubuntu
Instalar Webmin no Redhat e derivados
Ativar a interface de administração cockpit
Alguém já testou o novo COSMIC Desktop? O que achou? (6)
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (3)
Alguém pode me indicar um designer freelancer? [RESOLVIDO] (2)









