Есть ли способ включить входные данные в файл bash, чтобы я не вводил требуемый ввод в командной строке каждый раз, когда запускаю сценарий bash - PullRequest
0 голосов
/ 02 мая 2020

Я использую bash сценарии для автоматического развертывания на работающем сайте с сервером Ubuntu.

В одной строке есть что-то вроде:

scp build.zip user_name@ip_address:/path/to/releases/$release

Как только Ubuntu выполнит эту команду , он попросит меня ввести пароль в командной строке, например:

Enter passphrase for key '/home/user_name/.ssh/id_rsa':

Есть ли способ включить ввод в файл bash, чтобы я не буду вводить пароль в командной строке каждый время запуска сценария bash?

Ответы [ 2 ]

0 голосов
/ 02 мая 2020

Вы можете использовать другой файл, в котором вы пишете необходимые строки ввода.

./your_script.sh < your_input_file.txt

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

0 голосов
/ 02 мая 2020

Вы можете навсегда удалить фразу-пароль на клавише id_rsa, выполнив эту команду и установив новую пустую фразу-пароль:

ssh-keygen -p

Для общего решения c вы можете использовать expect скрипт для программного управления и взаимодействия с терминальной сессией.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...