Подача ввода в интерактивное приложение командной строки
Я хотел бы передать входные данные в интерфейс командной строки для Cisco AnyConnectvpncli.exe
(v2.3) для автоматизации его (пере) подключения. Он не принимает имя пользователя и пароль в качестве аргументов командной строки, но читает их в интерактивном режиме от пользователя через интерфейс командной строки.
Проблема в том, что трубопроводные входы вvpncli.exe
похоже, что пароль не работает. Это работает для всего, кроме пароля. Так что подобные вещи не работают:
vpncli.exe < input.txt
type input.txt | vpncli.exe
Приложение просто застревает там, где запрашивает пароль.
Ниже приведен пример нормального (рабочего) выполнения, когда пользователь вводит параметры:
Обратите внимание, как символы пароля преобразуются в*
.
Использование таких инструментов, как AutoIt или AutoHotKey для отправки входных данных в окно командной строки, работает, но является неуклюжим и хрупким (не работает, если инструмент по какой-то причине не может попасть в окно командной строки).
Есть ли способ отправить входные данные в такое интерактивное приложение CLI, используя PowerShell?
(Или используя какой-либо другой язык сценариев или другие средства?)