Подача ввода в интерактивное приложение командной строки

Я хотел бы передать входные данные в интерфейс командной строки для Cisco AnyConnectvpncli.exe (v2.3) для автоматизации его (пере) подключения. Он не принимает имя пользователя и пароль в качестве аргументов командной строки, но читает их в интерактивном режиме от пользователя через интерфейс командной строки.

Проблема в том, что трубопроводные входы вvpncli.exe похоже, что пароль не работает. Это работает для всего, кроме пароля. Так что подобные вещи не работают:

vpncli.exe < input.txt
type input.txt | vpncli.exe

Приложение просто застревает там, где запрашивает пароль.


Ниже приведен пример нормального (рабочего) выполнения, когда пользователь вводит параметры:

Example vpncli.exe run

Обратите внимание, как символы пароля преобразуются в*.


Использование таких инструментов, как AutoIt или AutoHotKey для отправки входных данных в окно командной строки, работает, но является неуклюжим и хрупким (не работает, если инструмент по какой-то причине не может попасть в окно командной строки).


Есть ли способ отправить входные данные в такое интерактивное приложение CLI, используя PowerShell?

(Или используя какой-либо другой язык сценариев или другие средства?)

Ответы на вопрос(2)

Ваш ответ на вопрос