Пакетный скрипт с несколькими сеансами ввода - PullRequest
0 голосов
/ 27 ноября 2018

Я пытаюсь создать пакетный скрипт, который автоматизирует вход и выход из Cisco Anyconnect.Я заметил, что Anyconnect поставляется с приложением CLI, которое должно сделать это легко.Однако моя проблема заключается в том, что приложение CLI требует, чтобы я предоставлял данные в течение нескольких сеансов.Процесс выглядит следующим образом:

  1. Сначала я набираю connect example.com и нажимаю ввод.Здесь example.com - это сервер, к которому я хочу подключиться.
  2. Затем я ввожу свое имя пользователя и нажимаю клавишу ввода.
  3. Наконец, я вставляю свой пароль и нажимаю клавишу ввода.

Я прочитал руководства о том, как передать несколько аргументов в пакетный скрипт, но мне кажется, что мне нужно сделать что-то дополнительное, чтобы аргументы вводились в соответствии с потоком, то есть, например, необходимо вводить аргументыкак будто ключ возврата имитируется.Есть кто-то с предложением?

Ответы [ 2 ]

0 голосов
/ 27 ноября 2018

в пакете, следующее может работать или не работать - зависит от того, как запрограммирован connect:

(echo username&echo password)|connect example.com

Примечание: будьте осторожны с пробелами ((echo username & echo password) может выглядеть лучше, но добавляетпробел к имени пользователя (возможно, сделав его недопустимым именем пользователя).

Если в вашем пароле должны быть какие-то ядовитые символы, вам нужно их избежать.(<>&|) с кареткой (например ^&)

0 голосов
/ 27 ноября 2018

Если вам известны входные данные, предоставленные в интерактивном режиме, вы можете попробовать ниже в PowerShell.

'first input','second input','third input' | executable.exe

пример ниже.

'list disk','select disk 0','list partition' | diskpart.exe
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...