выполнитесь локальный сценарий удара в удаленном использовании машины ожидают

У меня есть локальный сценарий оболочки. Теперь, я хочу запустить этот локальный скрипт в удаленной машине. Конечно, я могу использовать ssh, но поскольку это (локальный сценарий оболочки) должно быть похожим на автоматизированный, это не должно просить пароль вводить вручную. Таким образом, я использовал, ожидают устранять ту проблему, так, чтобы, если я запускаю скрипт она, привычка спросила пароль. И мой сценарий похож ниже.

#!/usr/bin/expect
spawn ssh -o GSSAPIAuthentication=no root@10.3.0.39 'bash -s' < /path/to/localscript
expect -timeout 7 "*(yes/no)?" { send "yes\r";exp_continue } 
expect -timeout 3 "*d: "
send "qbcrootpass\n"
interact

Но это не работает. Отметьте в моем сценарии, я не хочу использовать аутентификацию с открытым ключом.

Помогите мне выполниться, локальный сценарий в удаленном использовании использования машины ожидают.

1
задан 25 March 2014 в 15:21

1 ответ

То перенаправление обрабатывается Вашей оболочкой в командной строке. Ожидайте не поймет, как сделать это. Это должно работать (непротестированное):

set fh [open /path/to/localscript r]
set contents [read $fh]
close $fh

spawn ssh ... "bash -c '$contents'"
2
ответ дан 11 November 2019 в 09:40

Другие вопросы по тегам:

Похожие вопросы: