Как я могу передать аргументы в сценарий оболочки в другой команде с вопросами - PullRequest
1 голос
/ 04 октября 2019

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

Это означает, например, что мне нужно подключиться к VPN-клиенту и мне нужноответить на несколько вопросов. Примите доверие (да / нет), затем выберите опцию VPN (VPN / VPN-1), введите логин и пароль. Я хотел бы иметь один сценарий со всеми параметрами (конечно, исключая пароль).

Есть идеи? Спасибо

1 Ответ

1 голос
/ 04 октября 2019

Если файл ответов работает, вы можете избежать помещения пароля в файл с помощью токена замены. Например, напишите « ПАРОЛЬ » в файле, а затем используйте «sed» (или другой инструмент) для его замены во время выполнения.

Можно использовать «пароль чтения -s» илиДругой способ получить пароль во время выполнения.

read -s REAL_PASSWORD
sed -e 's/__PASSWORD__/$REAL_PASSWORD/' | command-to-setup

Если количество элементов в файле ответов невелико и не изменяется, вы можете встроить их в свой скрипт

read -s REAL_PASSWORD
command-to-setup <<__ANSWERS__
yes
VPN-1
login
$REAL_PASSWORD
__ANSWERS__
...