Itu tidak ditentukan dalam pertanyaan jika Anda ingin ini dijalankan pada mesin lokal atau jarak jauh. Ini juga tidak menentukan shell mana yang ada pada kedua mesin, jadi saya berasumsi bash
untuk keduanya.
Jika Anda ingin menjalankannya pada mesin jarak jauh, lihat ~/.bash_logout
, yang dijalankan ketika shell login keluar dengan anggun. Dari man bash
:
Ketika shell login keluar, bash membaca dan mengeksekusi perintah dari file ~/.bash_logout
, jika ada.
Anda dapat melakukan tes ~/.bash_logout
untuk memeriksa apakah shell yang keluar adalah sesi SSH, sesuatu seperti yang berikut ini akan berfungsi:
if [[ $SSH_CLIENT || $SSH_CONNECTION || $SSH_TTY ]]; then
# commands go here
fi
Jika Anda ingin menjalankannya di mesin lokal, buat pembungkus fungsi ssh
. Sesuatu seperti yang berikut ini seharusnya berfungsi:
ssh() {
if command ssh "$@"; then
# commands go here
fi
}
Itu mungkin terlalu sederhana untuk kebutuhan Anda, tetapi Anda mendapatkan idenya.