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