shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Guardar variavel entre chamada de funções


From: Fabiano Caixeta Duarte
Subject: Re: [shell-script] Guardar variavel entre chamada de funções
Date: Thu, 08 Nov 2007 15:31:26 -0200
User-agent: Thunderbird 2.0.0.0 (X11/20070326)

Simples! Você está chamando um script que será rodado em um subshell.

O export atua no shell corrente (no caso seu subshell) e em seus filhos.
Uma vez que a execução de teste.sh termina, o subshell morre e com ele
todas as variáveis.
Por isto o shell que está executando seu script.sh não conhece o valor
de $ola.

Use o que seria o include de outras linguagens. Chama-se source.

source teste.sh

Note que teste.sh nem precisa ter permissões de execução.

Atenciosamente,

-- 
Fabiano Caixeta Duarte
Especialista em Redes de Computadores
Linux User #195299
Ribeirão Preto - SP

miguelcm86 escreveu:
> Olá pessoal
> 
> É o seguinte, não estou a conseguir guardar uma variavel ao sair de
> uma função.. exemplo
> 
> script.sh
> 
> echo "este script chama o teste.sh"
> ./teste.sh
> echo "variável tem o valor de $olá"
> 
> exit 0
> 
> 
> 
> teste.sh
> 
> export olá=23
> 
> exit 0
> 
> 
> 
> isso aí em cima é um exemplo o programa na realidade é muito mais
> complexo.
> 
> não percebo porquê não funciona, tb já tentei por o export dentro de
> teste.sh e alocar antes de chamar a função, mas sempre que retoma a
> teste.sh perde o valor.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]