Meu script do servidor de origem tentando ssh em vários servidores e executando o comando específico do aplicativo que posso dizer, além dos comandos do sistema operacional (como cat, chmod ..), recebo o erro como comando: não encontrado. Abaixo está o roteiro.
for host in $(cat hosts_list.txt)
do
ssh $host chk_auto_up > "cmd_output.txt"
done
Alguém pode ajudar, o que devo incluir no script para identificar o comando e executar e gravar a saída do arquivo?
Eu tenho um erro dizendo que o comando não foi encontrado
Responder1
você acabou de editar a linha:
ssh $host /path/of/chk_auto_up > "cmd_output.txt"
Defina o caminho absoluto do comando.
Responder2
Encontrei uma resposta sobre como executar comandos externos via ssh remotamente.
for host in $(cat /***/thishost/**/username/hosts_list.txt)
do
ssh "$host"
. /**/***/*****/*****/******.${HOST}
chk_auto_up >> "/****/thishost/***/*****/cmd_output.txt"
exit
done
Detalhes:
hosts_list.txt
--> Tenho uma lista de servidores para fazer login por sshssh "$host"
-> o login ssh acontece no primeiro servidor.. /**/***/*****/*****/******.${HOST}
-> o caminho binário do comando externo está disponível aquichk_auto_up >> "/****/thishost/***/*****/cmd_output.txt"
-> Execute o comando e grave a saída no servidor de origem.