Как передать пароль на bash скрипт - PullRequest
2 голосов
/ 13 июля 2020

Я хотел бы написать сценарий bash, который автоматизирует определенный процесс c. Он запускает анализирующий cms-инструмент с передачей идентификатора. После передачи идентификатора инструмент запрашивает пароль пользователя. Сценарий должен прочитать список таких идентификаторов и ввести пароль пользователя после каждого перенаправленного идентификатора. В следующем простом примере показан процесс с идентификатором eventDatePicker:

jmm@workstation:/opt/media/tools/bin$ ./cm old-viewtypes-usage -u admin -s "/test/" -t "/home/media/transfer" -vt eventDatePicker

password:

Это мой созданный сценарий bash, но я не знаю, как реализовать функцию для передачи пароля пользователя. :

#!/bin/bash
# list with identifiers
input="/opt/media/tools/bin/technical_identifier"
#path to analyzing tool
cd /opt/media/tools/bin || exit
while IFS= read -r line
do
       ./cm old-viewtypes-usage -u admin -s "/test/" -t "/home/media/transfer" -vt "$line"
        # command for passing the user password 
       
done < "$input"

Я пробовал использовать read или expect, но не вышло. Буду рад любой помощи.

1 Ответ

1 голос
/ 13 июля 2020

Возможно, вам захочется выучить диалект Tcl «ожидать». Начните с запуска autoexpect и затем измените выходной скрипт, чтобы он принимал параметры и отправлял ваш пароль.

Это действительно единственный разумный способ создания интерактивных скриптов.

...