Сценарий оболочки, как поместить входные данные от пользователя без вмешательства пользователя - PullRequest
1 голос
/ 16 октября 2019

Так что моя идея - создать сценарий оболочки, который создает пользователя. Например, после вызова команды: flask fab create-admin

она запросит некоторые данные: имя пользователя (пользователь вводит имя пользователя, нажмите ввод) имя пользователя (ввод имени пользователя, нажмите ввод) пароль (Пользователь вводит имя, нажимает ввод)

И я хочу определить эти входные данные в файле, поэтому при вызове команды входные данные будут предоставляться автоматически без вмешательства пользователя.

Как я могудостичь этого в сценарии оболочки? Спасибо!

Ответы [ 2 ]

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

Я не знаю flask, но если требуется ввод в порядке имени пользователя, имени, пароля;Вы могли бы использовать heredocs, чтобы автоматизировать это.

# /bin/bash

source password.txt # a file that has the content of:
                    # username=user
                    # firstname=Ivan
                    # password=123


flask fab create-admin <<-EOF
${username}
${firstname}
${password}
EOF

exit 0

Однако хранить пароли в виде обычного текста обычно плохая идея. Вы можете использовать read, чтобы запросить ввод пользователя один раз и использовать его несколько раз, пока работает скрипт.

read -sp "Password? " password
echo $password
0 голосов
/ 16 октября 2019

ожидаемо , доступное в большинстве дистрибутивов Linux, имеет именно эту цель.

...