Я хочу временно добавить пользовательский ключ к ssh-agent
, выполнить несколько команд и забыть об этом.Несколько команд в подпроцессе ssh-agent
Man страницы гласит следующее:
SSH-агента [-c | -s] [-d] [-a bind_address] [-t life] [command [arg ...]]
Если задана командная строка, это выполняется как подпроцесс агента. Когда команда умирает, агент тоже.
Испытания показали, что это действительно хорошо работать с одной командой:
# ssh-agent ssh-add user_rsa_key
Identity added: user_rsa_key (user_rsa_key)
но не с несколькими командами:
# ssh-agent { ssh-add user_rsa_key; ssh-add -l; }
-bash: syntax error near unexpected token `}'
# ssh-agent $(ssh-add user_rsa_key; ssh-add -l)
Could not open a connection to your authentication agent.
Could not open a connection to your authentication agent.
SSH_AUTH_SOCK=/tmp/ssh-UQYDpH5Mopk3/agent.25436; export SSH_AUTH_SOCK;
SSH_AGENT_PID=25437; export SSH_AGENT_PID;
echo Agent pid 25437;
Есть ли способ?
Хлопок может заключаться в том, чтобы указать явное время жизни с использованием параметра '-t', хотя это оставляет возможность того, что ключ либо истекает слишком рано, либо хранится дольше, чем необходимо. – chepner