У запитанні не вказано, чи потрібно це виконати на локальній або віддаленій машині. Також не вказано, яка оболонка присутня на обох машинах, тому я припускаю, що bash
для обох.
Якщо ви хочете виконати його на віддаленій машині, подивіться ~/.bash_logout
, що виконується, коли оболонка входу граціозно виходить. Від man bash
:
Коли оболонка входу виходить, bash зчитує та виконує команди з файлу ~/.bash_logout
, якщо він існує.
Ви можете зробити тест, ~/.bash_logout
щоб перевірити, чи не виходить з оболонки сеанс SSH, щось подібне має працювати:
if [[ $SSH_CLIENT || $SSH_CONNECTION || $SSH_TTY ]]; then
# commands go here
fi
Якщо ви хочете виконати його на локальній машині, створіть навколо нього функціональну обгортку ssh
. Щось таке, що має працювати:
ssh() {
if command ssh "$@"; then
# commands go here
fi
}
Це може бути занадто простим для ваших потреб, але ви отримуєте ідею.