CMD.exe C # эмулятор? - PullRequest
       21

CMD.exe C # эмулятор?

1 голос
/ 15 января 2010

Я очень старался автоматически подключиться к серверу Linux. Что безумно, так это то, что я могу создать скрипт .bat, который будет это делать, но я должен быть там физически, чтобы ввести пароль.

Я пытался автоматизировать это с помощью объекта System.Diagnostics.Process в c # без конца. Я не нашел способа заставить этот объект видеть запрос пароля. Он выводит каждую строку до этой точки, а затем не выводит больше строк.

cmd.exe, очень хорошо позволяет вам переходить от процесса к процессу в скрипте; Он объединяет все на одном экране и просто запрашивает такие вещи, как пароли, а затем вы вводите их.

Есть ли простой способ в C #, чтобы заставить cmd.exe думать, что вы печатаете на нем, как человек, так что я могу смоделировать это программно? В противном случае System.Diagnostics.Process, похоже, не предлагает способ взаимодействия с процессом, который выводит запрос пароля. Вы никогда не увидите подсказку, которая отчетливо происходит, когда вы запускаете то же самое в cmd.exe

Ответы [ 4 ]

2 голосов
/ 15 января 2010

cmd.exe не является SSH-клиентом; это просто оболочка для одного. Изучите возможности реального клиента. В PuTTY (очень популярном!) Есть функция автологона, если у вас есть ключ SSH.

1 голос
/ 15 января 2010

Не зная, какой инструмент командной строки вы используете для ssh на сервер, нет параметра командной строки для предоставления пароля.

C:\> ssh user@ip -p password

Или вы пытались перенаправить ввод:

ssh user@ip <
Yourpassword
EOF

При рассмотрении вопроса ранее , какие проблемы возникают при использовании интерфейса программиста?

Вы уверены, что вам нужен полноценный ssh-клиент, или вы просто хотите выполнить команду удаленно?Если это последнее, вы можете проверить plink .

1 голос
/ 15 января 2010

Вы можете использовать

Windows.Forms.SendKeys () для отправки пароля при нажатии клавиш

Справочный материал

0 голосов
/ 25 января 2012

plink.exe -ssh user @ host -2 -i user.ppk -m command_line.txt

Как создать файл ppk: http://theillustratednetwork.mvps.org/Ssh/Private-publicKey.html

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