SSH para o servidor, execute comandos e devolva o controle ao usuário

2

Como posso fazer algo assim com um comando ssh:

echo << EOF
echo "Choose a file:" *
read f
rm -r "$f"
EOF | ssh user@host

Eu posso usar o -tt (sim dois t's) com ssh para fazer o ssh ler o stdin, no entanto, ele não parece permitir que read funcione.

Existe uma maneira de fazer isso?

    
por Tyilo 18.02.2013 / 00:40

1 resposta

2

Se eu entendi o seu comando de exemplo corretamente, isso deve funcionar:

ssh user@host 'echo "Input something:"; read VAR; echo "Got: $VAR"'              

Isso funcionou quando "host" era um servidor Linux do Slackware e ssh rodava em um laptop Arch linux. Meu shell no servidor do Slackware é o zsh 4.2.6 (i486-slackware-linux-gnu). Como read é um shell embutido, imagino que a escolha do shell possa ter algo a ver com isso.

    
por 18.02.2013 / 01:11

Tags