Задать вопрос
@luaPower

Как передать данные программе на STDIN?

Здравствуйте.

Зачастую приходится сталкиваться с необходимостью передачи предопределенных ответов на запросы различных приложений. Вопрос состоит в том, как передавать эти данные? Допустим, есть такой код (для демонстрации проблемы):

user=User
password=Password
server=1.2.3.4

echo "$password" | ssh "$user@$server"


Почему после его выполнения ssh по-прежнему требует ввод пароля? Аналогичные проблемы возникают, например, с архиватором zip.

Подскажите, пожалуйста, как правильно передавать данные в подобных случаях? Спасибо!
  • Вопрос задан
  • 205 просмотров
Подписаться 2 Простой 1 комментарий
Решения вопроса 1
@galaxy
Ssh (и многие другие программы) пароль считывают не из stdin, а напрямую из терминала, из соображений безопасности. Для ssh есть костыли
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@pfg21
ex-турист
вместо входа по паролю стоит использовать вход по ключу.
он автоматически подставляется ssh из стандартного пути (или из произвольного с помощью параметров ssh)
ну и защита от взлома в комплекте.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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