Apakah ada cara untuk menyajikan nama sesi Layar GNU dan judul jendela di prompt shell (katakanlah, prompt Bash ditentukan oleh PS1
)?
bash
gnu-screen
prompt
brandizzi
sumber
sumber
screen -xr 2466 -X windows
.Ctrl-a A
?screen
telah dikompilasi dengan opsi-Q
(permintaan), maka Anda dapat menjalankan beberapa perintah, sepertititle
danwindows
dan memiliki tampilan data untuk stdout, bagaimanapun, tanpa baris baru.Saya selalu menggunakan nama sesi layar yang tepat. Kemudian saya dapat menambahkan layar STY env var, dengan id numerik dilucuti (terima kasih dimo414), ke PS1. Saya tidak menghiasnya dengan kurung kurawal atau apa pun karena saya tidak selalu dalam satu sesi. Contoh sederhana:
sumber
Saya menggunakan ini:
menghapus nomor proses dari
${STY}
memasukkan nomor jendela (seperti yang disebutkan "pada waktu pembuatan")
termasuk judul jendela (seperti yang dikembalikan dari
screen -Q title
)catatan:
screen -Q
menunggu keystroke kembalisumber
${STY#[0-9]*.}
menghindari perlu melalui pipased
.