Yanıtlar:
Ekran bazı ortam değişkenlerini sağlar ( screen(1) kılavuzundan):
STY Alternate socket name.
WINDOW Window number of a window (at creation time).
"Oluşturma zamanında", bir pencereyi yeniden numaralandırırsanız (ekranın numberkomutunu kullanarak ), kabuğa değişiklikten bahsedilmez ve $ WINDOW yine de ilk pencere numarasıyla aynı olur.
Şöyle bir şey kullanabilirsiniz:
PS1='\u@\h(${STY}:${WINDOW}):\w$ '
screen -xr 2466 -X windows.
Ctrl-a Amı?
screenile derlenmiştir -Q(sorgu) seçeneği, o zaman gibi bazı komutlar, çalıştırabilir titleve windowsbir eğik yeni satır olmadan, ancak ve stdout'a veri ekran var.
Her zaman hassas ekran oturumu adları kullanırım. Sonra PS1'e sayısal kimlik çıkarılmış (teşekkürler dimo414) ekran STY env var ekleyebilirsiniz. Kıvırcık parantez veya herhangi bir şeyle süslemiyorum çünkü her zaman bir oturumda değilim. Basit bir örnek:
PS1='\u@\h ${STY#[0-9]*.} \w$ '
Bunu kullanıyorum:
(`echo ${STY} | sed -e 's/[0-9]*\.//g'`:${WINDOW}:`screen -Q title`)
işlem numarasını ${STY}
pencere numarasını içerdiği için kaldırır ("oluşturma sırasında" belirtildiği gibi)
pencere başlığını içerir (döndürüldüğü gibi screen -Q title)
notlar:
screen -Qbir tuşa basmayı bekler${STY#[0-9]*.}boru döşenmesi gerekmez sed.