willricardo
(usa Ubuntu)
Enviado em 30/09/2008 - 10:27h
Galera Segue o script abaixo do que eu estou tentando efetuar, acontece o seguinte tenho am uma pasta qualquer 300 arquivos e cada arquivo contem em media dez string de conexão com o banco de dados, então desenvolvi este Script que passei abaixo que me satisfaz e muito nesta alteração, porém eu tenho um problema, pois tenho varios ambientes pra rodar este Script, só que as senhas são diferentes.
Ex. tem ambiente que a senha do banco é teste20 e tenho que altera-la para correto20, pois o Sed pega meu usuario e senha de conexão com o banco e altera
"sed '-e s/teste20@D03MB1;1/correto20@D03MB1;1/g".
Agora tenho um problema que é o seguinte eu tenho 40 ambientes e cada ambiente os usuarios são por exemplo MTAAPP1....MTAAPP2...e etc.
Então quando copio este programinha pra rodar em outros ambientes tenho que arrumar toda a estrutura do meu Script, pois se não não ira ficar correto.
Gostaria de saber se tem como eu pegar este usuario e senha default do Ambiente?!
A solução que estou encontrando é colocar uma variavel read e informar os dados que quero alterar manualmente, porém não sei se é muito viavel, pois va que um dia digito errado, pronto ferrei toda a estrutura de meu ambiente.
Não sei fui claro, mas pode perguntar que explico novamente.
Segue abaixo o Script.
mkdir INFO
ll -tr > ./INFO/allFiles
i=1
while [ $i -le `wc -l INFO/allFiles` ]
do
fileInDir=`sed -n ${i}p INFO/allFiles | awk '{ print $9 }'`
echo " $fileInDir "
arrayfFles[$i]=$fileInDir
echo " ${arrayfFles[$i]} \n"
cp -f ${arrayfFles[$i]} ${arrayfFles[$i]}_bkup
sed '-e s/teste16@D03MB1;1/juno160@D03MB1;1/g' ${arrayfFles[$i]}_bkup > ${arrayfFles[$i]}_sed
sleep 1
sed '-e s/teste16\/teste16/teste16\/JUNO160/g' ${arrayfFles[$i]}_bkup > ${arrayfFles[$i]}_sed
sleep 1
sed '-e s/pass="teste16"/pass="JUNO160"/g' ${arrayfFles[$i]}_bkup > ${arrayfFles[$i]}_sed
sleep 1
mv ${arrayfFles[$i]}_sed ${arrayfFles[$i]}
i=$((i+1))
done
rm -rf INFO
sed '-e s/teste16@D03MB1;1/1;5;mtaapp16\/juno160@D03MB1;1/g' pmenvironment.txt > pmenvironment.txt_x
mv pmenvironment.txt_x pmenvironment.txt
chmod 755 *
echo "FINISH !!!";