Di dalam ~/.ssh/config
Anda dapat menggunakan LocalCommand
arahan untuk mengeksekusi perintah lokal setiap kali Anda terhubung ke mesin jarak jauh melalui SSH. Tapi bagaimana cara menjalankan perintah ketika saya keluar dari koneksi SSH? Tampaknya file * .bashrc / .bash_profile * tidak bersumber saat koneksi berakhir atau ditutup.
9
Jawaban:
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. Dariman bash
:Anda dapat melakukan tes
~/.bash_logout
untuk memeriksa apakah shell yang keluar adalah sesi SSH, sesuatu seperti yang berikut ini akan berfungsi:Jika Anda ingin menjalankannya di mesin lokal, buat pembungkus fungsi
ssh
. Sesuatu seperti yang berikut ini seharusnya berfungsi:Itu mungkin terlalu sederhana untuk kebutuhan Anda, tetapi Anda mendapatkan idenya.
sumber
Anda berada di jalur yang benar. Jika
ssh
sesi adalah shell login (bukan perintah jarak jauh),bash
akan sumber/etc/bash.logout
dan~/.bash_logout
ketika Anda keluar dari shell.Jika Anda ingin menjalankan perintah jarak jauh, maka Anda bisa memaksanya
bash
menjadi shell login. TheLocalCommand
bisa seperti ini:Dari
man 1 bash
sumber