Di Mac OS X (saya di 10.6.8, meskipun saya percaya versi lain sama) ssh'ing ke mesin jarak jauh mengubah judul tab saat ini di Terminal. Yang menjengkelkan, ketika saya memutuskan sambungan dari mesin jarak jauh, baik secara eksplisit dengan exit
atau melalui batas waktu, judul tab tidak berubah kembali ke apa itu sebelumnya.
Hampir setiap hari, ini hampir menyebabkan saya menderita serangan jantung, ketika saya mengetik melakukan perintah atau lainnya, hanya untuk melihat dari sudut mata saya bahwa tab tersebut masih bernama user @ remotehost. Saya pengguna yang berhati-hati yang selalu cenderung pwd
dll untuk mengkonfirmasi lokasi saya sebelum melakukan apa pun, namun itu masih membuat saya panik saat saya melakukan DROP DATABASE x
dan saya melihat nama host jarak jauh di tab.
Singkatnya, adakah cara untuk mengembalikan judul ini saat memutuskan sambungan dari host jarak jauh, atau apakah saya harus tetap membuka tab baru setiap kali saya memutuskan sambungan, untuk mengatur ulang judul?
npm
Jawaban:
Tambahkan
PROMPT_COMMAND
ke.bash_profile
The
PROMPT_COMMAND
dijalankan setiap kali prompt ditampilkan.Harap dicatat bahwa kami menyertakan
PROMPT_COMMAND
variabel lingkungan yang ada , sehingga kami tidak kehilangan pengaturan yang ada (yaituupdate_terminal_cwd
).sumber
PROMPT_COMMAND="<your code>; $PROMPT_COMMAND"
; jika tidak, Anda akan menonaktifkan fungsionalitas lain yang menggunakan variabel ini. Sebagai contoh, / etc / bashrc menggunakannya untuk mengatur direktori kerja terminal saat ini sehingga Terminal dapat menampilkannya dan menggunakannya untuk berbagai operasi.$PROMPT_COMMAND
agar fungsi lain dapat dipertahankan?.bash_profile
?sublime $HOME/.bash_profile
?subl
perintah diinstal, dan kemudian edit file dari terminal Anda menggunakansubl ~/.bash_profile
. Jika perintah ini tidak ada, ikuti ini: sublimetext.com/docs/2/osx_command_line.htmlInilah yang harus Anda tempelkan ke
.bash_profile
file Anda . Ini jauh lebih bersih dan mengambil pendekatan apa yang Apple lakukan ketika memperbarui direktori kerja Anda saat ini. Pemeriksaan untuk variabelupdate_term_title
sudah ada tidak benar-benar diperlukan (karena tidak ada yang memanggilbash -- login
), tetapi hanya hadir sebagai penjaga.sumber