Я использую открытый и закрытый ключ для ssh на удаленный сервер без пароля. После этого мне нужно выполнить команду "git pull". Но я не знаю, как передать в него пароль. Пробуем следующее решение, но оно не работает:

#!/bin/sh

ssh user@server '

cd /folder

echo "password" | git pull

'

Другое дело, что я не хочу выставлять пароль в скрипте. Любое предложение? Спасибо

1 ответ1

2

Возможно, вы могли бы использовать файл .netrc (примечание: я сам этого не делал). Вы можете либо динамически генерировать .netrc во время выполнения, либо оставить его там.

РЕДАКТИРОВАТЬ: Пока ваш сценарий имеет доступ к .netrc, так и пользователь, который запускает сценарий. Поэтому, если вы даете сценарий кому-то другому, и у кого-то есть доступ к закрытому ключу, не имеет значения, что у вас нет жестко запрограммированного пароля в сценарии.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .