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

Re: Ajuda em Script



A proposito, evite variáveis com nomes em ingles que sejam comuns noutras linguagens ou variáveis de ambiente como domain=123, hostname=fabio,computer=12, etc... Alguns gostam de colocar _ antes do nome da variaivel tal como _server, _hostname, etc... ou então termos em portugues, quando eu quero que outros entendam o que eu estou escrevendo uso variaveis em portugues ou então a,b,c,... em inglês só termos bem conhecidos. Considero server um nome de variável arriscado para um script que roda em cima de servidores, é como usar uma variavel chamada xe num ambiente cercado de xenservers.

Em 29 de janeiro de 2015 09:29, hamacker <sirhamacker@gmail.com> escreveu:
Considerando que o arquivo servidores_uniserver.txt esteja correto e a sintaxe ssh-copy-id esteja adequada, tenho uma pequena sugestão para seu script:
#!/bin/bash
echo "Criando chave"
ssh-keygen -b 2048 -t rsa
cd /root/.ssh
echo "Executando Funcao"
sleep 5
while read server ; do
  ssh-copy-id -i "$server"
  echo "---------------------------------------"
  echo "$server Chave copiada"
done <servidores_uniserver.txt

Eu considero esta uma forma mais segura de pegar linha-a-linha de um arquivo texto do que a saída de um comando como o cat, especialmente quando alguns caracteres problemáticos podem aparecer no meio do caminho.
Testa aí e depois nos diz.

Em 27 de janeiro de 2015 12:39, Leandro <leandrojpg@gmail.com> escreveu:

Bom dia a todos.

Estou tentando desenvolver esse pequeno script para criar relacao de confianca nos meus servidores. Porém a  $(cat servidores_uniserver.txt) que contem o nome dos servidores ao qual desejo enviar as chaves geradas, ao invez de pegar só o nome dos servidores contido dentro dele, eles está copiando o arquivo servidores_uniserver.txt, nao entendi onde está o meu erro. se alguem puder ajudar agradeco.


Tem outra coisa na linha 
ssh-copy-id -i "$server" acredito que aqui é deve estar o meu erro, por que é aqui que ele copia o arquivo servidores_uniserver.txt ao invez de copiar só a chave.


Agradecido.


#!/bin/bash
echo "Criando chave"
ssh-keygen -b 2048 -t rsa
cd /root/.ssh
echo "Executando Funcao"
sleep 5
for server in $(cat servidores_uniserver.txt); do
ssh-copy-id -i "$server"
echo "---------------------------------------"
echo "$server Chave copiada"
done













--
Leandro Paulo




Reply to: