2017-02-18 16 views
-1

Моего expect скрипт пытается выполнить следующую команду, чтобы скопировать скрипт на удаленный узел:как пропускать баннеры во время входа в удаленную машину с использованием сценария ожидания?

spawn scp -o StrictHostKeyChecking=no  /tmp/rem_script.sh $env(user_name)@$env(first_db_node_ip):/tmp 
expect "assword" 
send -- "$env(rem_password)\r" 
expect eof 

Но, к сожалению, удаленный хост, имеющее знамя, как показано ниже, так как баннер содержит пароль слова, expect скрипта посылает PWD до того, как правильно ожидать приглашения

Баннер:

================================================================ 
For password resets, please call the Helpdesk xxx-xxx-xxxx 
================================================================ 
+0

Обратите внимание, что я могу изменить ожидаю как «совпадение», но для каждого хоста он будет отличаться, так что выглядящий fior что-то вроде пропущенного баннера –

ответ

2

Попробуйте запустить scp с опцией -o LogLevel=error.

Другое, что вы могли бы сделать, это не использовать expect, но использовать ключи ssh для аутентификации вместо паролей.

 Смежные вопросы

  • Нет связанных вопросов^_^