O comando SSH remoto falha apenas no script de shell com erro: “No such file or directory”

0

Eu estou tentando executar um script em um sistema remoto usando ssh, quando eu executo o comando no terminal ele executa bem, mas quando eu incorporar o comando em um shell script ele retorna um erro.

Comando 1:

cmd="ssh root@IP \"python /pathtoscript\""
'$cmd' > log.log

para o comando acima eu tentei as seguintes sugestões de troca de pilha:

 cmd="ssh root@IP \"bash -c 'python /pathtoscript'"
 cmd="ssh root@IP '/user/bin/python /pathtoscript'"

Comando 2:

ssh root@IP "ls -1v /path"

Nota: todos esses comandos funcionam no terminal.

Editar: Se eu executar o comando no terminal, ele executa bem e exibe a saída Agora, se o mesmo comando for adicionado a um script (.sh), vejo o seguinte erro: bash: ssh root @ IP 'python / pathtoscript': Não existe tal arquivo ou diretório

    
por ShivaPahwa 08.02.2017 / 08:03

1 resposta

2

bem, eu não sou especialista, mas isso pode ajudar,

quando você usa o comando ssh, você virtualmente entra na outra máquina "root @ IP" como você mencionou

quando você está em outra máquina, como você pode executar seu arquivo local lá, primeiro você precisa enviar o seu arquivo lá, então só você pode executá-lo lá,

agora tente isso

#scp file_you_need_to_send UserName @ RemoteHost: Target_location_on_target_system isso deve copiar seu script no sistema de destino

#ssh UserName @ RemoteHost para entrar no sistema de destino

exponha o seu script.

: P

    
por 09.02.2017 / 08:14