variaveis em dois scripts diferentes
Pessoal,
Gostaria de utilizar uma variável que está em um script em outro script mas estou tendo dificuldades. Vou explicar o que quero fazer e se alguém souber uma maneira mais fácil ficaria agradecido pela ajuda!
Seguinte, Fiz um script para criar usuários linux/samba e está rodando legalzinho, mas agora quero dar uma melhorada e criar um outro script para gerar uns arquivos e pastas para o usuários criado. Então preciso exportar as variáveis dos script1 para o script2, que seriam o login do usuário e o grupo que ele pertence. Como fazer isto?
Já tentei:
Código :
usuario='login_do_usuario';
echo $usuario; #(para visualizar o valor de usuario)
set usuario=$usuario;
Desde já agradeço qq. ajuda.
Abraços.
Re: variaveis em dois scripts diferentes
vc pode chamar o 2o script, a partir do primeiro, passando usuário como parâmetro..
exec 2o.script.sh $usuario
no segundo script (o chamado):
nome_da_criatura=$1
$1, óbvio, é o parâmetro enviado pelo primeiro script.
:evil:
Re: variaveis em dois scripts diferentes
ora, se o seu script está a rodar com /bin/sh ou /bin/bash, para vc setar as variaveis, vc usa o "export" e nao o "set", por exemplo
export VARIAVEL="linux"
echo $VARIAVEL
até aqui tudo bem. Utilizar variaveis de ambiente (aquelas que vc faz um "export") pois podem ser perigosas, conter passwords ou outro tipo de dados sensiveis.. eu aconselho vc ao invez de usar este tipo de variaveis, usar um arquivo com as variaveis, pois é, a verdade é que o shell script tb dá para fazer o abencoado "include()" muito conheçido no PHP e no C/C++, embora muita gente desconheça este facto e acabe por utilizar outros metodos. veja:
----variaveis.sh------
USER="root"
UID="0"
------------------------
agora segue o script que irá fazer o include()
-----script.sh-------
# o ponto "." é o responsavel pelo include
# (NOTA: ./ é apenas o caminho do arquivo das variaveis, vc pode usar outro
# caminho, por exemplo ". /etc/variaveis.sh" mas nc esqueça o primeiro ponto!)
. ./variaveis.sh
echo $USER
echo $UID
---------------------
Espero que ajude colega, Um abraço.