Как автоматически закрыть ssh-agent вместе с закрытием Cygwin?

647
Vlastimil

Я на Windows 10 Pro.

Я добавил следующие строки в мой ~/.bashrcфайл Cygwin (полностью обновленный) :

eval $(ssh-agent) > /dev/null ssh-add > /dev/null 2>&1 

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

Обратите внимание, что я перенаправляю вывод этих команд в черную дыру для меня, не особо заинтересованного в этом, в противном случае он выведет что-то вроде:

Agent pid 11060 Identity added: /home/vlastimil/.ssh/id_rsa (/home/vlastimil/.ssh/id_rsa) 

Но сегодня я заметил, что по какой-то причине эти ssh-agent.exeпроцессы остаются в памяти после того, как я выхожу из системы и закрываю Cygwin.

Вопрос:

Как автоматически закрыть ssh-agentвместе с закрытием Cygwin?

0

1 ответ на вопрос

0
Vlastimil

Я решил, что первое, что нужно сделать, находится в ~/.bashrcфайле, мне нужно сохранить вывод:

eval $(ssh-agent) 

Вместо того, чтобы отказаться от него; пример следует:

eval $(ssh-agent) > ~/.ssh-agent-stdout 

Наконец, создайте следующий файл:

~/.bash_logout 

С содержанием:

ssh_agent_pid=$(awk '{ print $3 }' ~/.ssh-agent-stdout) kill -HUP "$ssh_agent_pid" 

Похожие вопросы