Repasse de parâmetros de um script a outro

Publicado por Fernando Rego (última atualização em 12/05/2016)

[ Hits: 2.754 ]

Homepage: http://qei.com.br/fernando.rego

Download throwErr.sh




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.

  



Esconder código-fonte

# !/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

Scripts recomendados

Programação do Dia da Tv Aberta

Script para fazer download de vídeos do YouTube

Overclock em INTEL HD GRAPHICS!

substituir strings nos nomes de arquivos

Script para iniciar programas instalados no wine


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts