Bunun yerel veya uzak makinede yürütülmesini isteyip istemediğiniz soruda belirtilmez. Her iki makinede de hangi kabuğun bulunduğu belirtilmedi, bu yüzden bash
her ikisi için de varsayıyorum .
Uzak makinede yürütmek istiyorsanız ~/.bash_logout
, bir giriş kabuğu zarif bir şekilde oturumu kapattığında yürütülen işleme bakın . Gönderen man bash
:
Bir oturum açma kabuğu çıktığında, bash dosyadan komutları okur ve yürütür ~/.bash_logout
.
~/.bash_logout
Oturumu kapatılan kabuğun bir SSH oturumu olup olmadığını kontrol etmek için bir test yapabilirsiniz , aşağıdakine benzer bir şey çalışmalıdır:
if [[ $SSH_CLIENT || $SSH_CONNECTION || $SSH_TTY ]]; then
# commands go here
fi
Yerel makinede yürütmek istiyorsanız, etrafında bir işlev sarmalayıcısı oluşturun ssh
. Aşağıdaki gibi bir şey işe yaramalıdır:
ssh() {
if command ssh "$@"; then
# commands go here
fi
}
Bu, ihtiyaçlarınız için çok basit olabilir, ancak fikri anlarsınız.