Интерактивный cmd.exe в Windows - PullRequest
1 голос
/ 06 марта 2010

Возможно ли создать интерактивный cmd под Windows?

Я ищу решение для сценариев для удаленного входа на сервер, которое запрашивает ввод пароля.

Возьмите SSH в качестве примера. Обычный пользователь будет делать следующее в окне командной строки:

C:>ssh2 user@server.com "echo Hello"
user's password: ********
Hello

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

ssh2 user@server.com "echo Hello" < password.txt  # not working

Поэтому я ищу скрипт, который может выдать себя за пользователя. В Linux мы можем использовать ожидаемый, например:

#!/usr/bin/expect

spawn ssh user@server.com "ls"
expect *assword:
send "password\r"

Я ищу похожие вещи в среде Windows.

Обновление: Если PowerShell может сделать то же самое, может кто-нибудь вставить образец сценария? Благодаря.

1 Ответ

1 голос
/ 17 марта 2010

Эта проблема решена.

Используйте powershell, который создает объект Process, и играйте с этим объектом.

...