Parece que seu cifrão na 12ª variável está no lugar errado.
export TYPE_RELN_IDS="{$12}"
deve ser export TYPE_RELN_IDS="${12}"
Temos um agendador de terceiros que executa um dos scripts de shell do nosso trabalho no bash.
Quando o script de shell é chamado, ele define as variáveis de ambiente do agendador como $1
, $2
, $3
, etc na linha de comando.
Vindo do nosso agendador, temos:
FILE_PATH1="/opt/shared/script1.sh"
FILE_PATH2="/opt/shared/script2.sh"
PROCESS_ID="SYNC1"
TYPE_RELN_IDS="520"
Então, no nosso script eu tenho:
export FILE_PATH1="$1"
export FILE_PATH2="$2"
...
export PROCESS_ID="${11}"
export TYPE_RELN_IDS="{$12}"
...
echo "PROCESS_ID =" $PROCESS_ID
echo "TYPE_RELN_IDS =" $TYPE_RELN_IDS
E para a saída do runtime do shell script estou recebendo:
PROCESS_ID = SYNC1
TYPE_RELN_IDS = {/opt/shared/script1.sh}
em vez de 520 para TYPE_RELN_IDS
. Existe um problema com o limite da 12ª variável de ambiente que estou perdendo?