Имитация нажатия клавиш в C - PullRequest
0 голосов
/ 12 апреля 2011

Например, я хочу запустить:

ssh root@127.0.0.1 -p 2222

в C (с помощью system) команды. Но сразу после этого он запрашивает ввод:

root@127.0.0.1's password:

Тогда я должен ввести пароль. Как я могу сделать это в коде C? Могу ли я получить код о том, как я могу имитировать нажатия клавиш? Или есть лучший способ сделать это?

Ответы [ 3 ]

4 голосов
/ 12 апреля 2011

Есть лучшие способы сделать это, например, SSH-аутентификация на основе ключей .

3 голосов
/ 12 апреля 2011

есть красивая команда ожидайте

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

1 голос
/ 12 апреля 2011

Вы должны запустить:

ssh-keygen -t rsa
ssh-copy-id root@127.0.0.1 -p 2222

Это скопирует авторизованный ключ для выполнения команд ssh из вашей учетной записи в root на вашем компьютере. Будущие ssh-запросы не будут запрашивать пароль. Это также означает, что вам не нужно включать пароль root в свой скрипт оболочки.

Другим вариантом будет команда sudo. Вы можете добавить утвержденные команды в файл sudoers, включая опцию игнорирования пароля для этих команд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...