saat ini saya menggunakan kode perl satu baris untuk mengubah judul bar terminal saya,
print("\e]0;@ARGV\7");
tetapi setiap kali setelah saya ssh ke mesin remote lain, judul akan dimodifikasi oleh tuan rumah (dimana saya tidak terlalu terganggu). Tetapi setelah saya keluar dari koneksi, judul yang diubah tetap ada. Apakah ada cara untuk memperbaikinya? pada dasarnya saya ingin judul tetap untuk terminal saya ketika beroperasi secara lokal.
Saya terutama menggunakan terminal dan terminator xfce di bawah CentOS atau Debian. Terima kasih.
EDIT
Kehalusan lainnya adalah bahwa, alih-alih memiliki semua terminal dengan nama yang sama, saya lebih suka memiliki kebebasan untuk mengedit judul mereka secara langsung tetapi hanya melarang sesi SSH dari memodifikasi apa yang saya edit.
Solusi: tambahkan beberapa fungsi ~ / .bashrc untuk melakukan sesuatu setelah perintah ssh dan su
Catatan: mulai ulang bash setelah pengeditan ke ~ / .bashrc
Contoh:
Semoga itu bisa membantu.
sumber
revert
karena Anda tidak memeriksa untuk melihat apa itu sebelumnya ... jika Anda bertanya dan menyimpan nilai sebelumnya ;-)Konfigurasikan dotfile shell lokal Anda (misalnya
$PROMPT_COMMAND
dalam~/.bashrc
) untuk mengatur judul terminal dengan tepat, menggunakan mekanisme yang sama.Sebagai contoh:
sumber
export PROMPT_COMMAND="printf '\e]0;\7\n'"
), maka emulator terminal Anda dapat mengatur judul jendela sesuai keinginan. Ketika Anda ssh ke host jarak jauh yang menetapkan judul terminal, emulator terminal Anda akan menunjukkan judul itu, dan ketika Anda keluar, itu akan kembali menggunakan judulnya sendiri. Setidaknya, begitulah cara kerja aplikasi Terminal macOS.Tambahkan baris-baris ini ke ~ / .bashrc
bekerja dengan baik dengan linux berbasis debian
sumber
PROMPT_COMMAND
daripada menggunakanPS1
, karena Anda tidak harus menyertakan tanda\[ \]
kurung dan dapat menghilangkan beberapa kutipan.Salah satu solusinya adalah mengubah variabel terminal ke vt100 sebelum ssh'ing, misalnya dijalankan
Ini berfungsi karena biasanya skrip inisialisasi melihat variabel terminal dan hanya mengubahnya dengan judulnya itu xterm. Anda kehilangan layar alternatif, warna dan mungkin beberapa fitur mewah lain yang mungkin Anda hargai atau tidak Anda hargai.
Jika Anda ingin menjaga terminal lokal sebagai xterm, alias ssh untuk mengubah variabel terminal dengan cepat, seperti
sumber
Saya memperbaiki masalah ini dengan menambahkan ini ke PS1 saya di file .bashrc saya.
Karenanya seluruh baris terlihat seperti ini (Saya telah menyesuaikan PS saya !:
Saya harap itu membantu orang lain.
sumber
export PS1='\[\033]0;\007\]\h:\W \u\$ '
), maka emulator terminal Anda dapat mengatur judul jendela sesuai keinginan. Ketika Anda ssh ke host jarak jauh yang menetapkan judul terminal, emulator terminal Anda akan menunjukkan itu, dan ketika Anda logout, ia akan kembali menggunakan judulnya sendiri. Setidaknya, begitulah cara kerja aplikasi Terminal macOS.Jawaban lain tidak akan bekerja untuk saya ketika saya keluar dari SSH, tetapi membuat saya dekat. Menambahkan setw automatic-rename berfungsi ketika saya keluar dari sesi ssh jarak jauh sehingga otomatis mengganti nama dan tidak harus keluar dari jendela lagi untuk mengatur ulang. [Jan. 2018 - Debian 9]
sumber