apakah mungkin untuk memeriksa apakah saya sekarang di sesi layar? Saya membutuhkannya untuk menentukan apakah menekan ctrl + d akan memutuskan sambungan saya dari server atau hanya menutup layar saat ini. Terima kasih.
gnu-screen
console
wlk
sumber
sumber
if test -n "$STY"; then printf "This is a screen session named '$STY'.\n"; else printf "This is NOT a screen session.\n"; fi
Anda dapat melihat variabel $ TERM.
echo $TERM
Jika suatu
screen
sesi, variabel istilah harus mengembalikan "layar".Ctrl-a -d (untuk keluar dari layar)
Juga periksa: https://stackoverflow.com/questions/3472287/how-do-you-tell-if-the-current-terminal-session-is-in-gnu-screen
sumber
"$TERM" = "screen"
tampaknya dilestarikan ketika memasukisudo
lingkungan, tidak seperti$STY
opsi.Kecuali Anda telah mengubah binding kunci default, Anda dapat melakukan Ctrl+ a-> Ctrl+ t, yang akan menunjukkan waktu, jika Anda berada di layar. Ini akan bekerja bahkan jika Anda memiliki ssh: d pergi ke tempat lain, tidak seperti saran lainnya.
sumber
The
caption
perintah dalam~/.screenrc
merupakan cara yang baik untuk membedakan sesi layar.Saya pribadi menggunakan ini:
Itu menambahkan garis seperti ini di bagian bawah layar:
Dengan bagian pertama (nama sistem + memuat) berwarna hijau dan tanggal berwarna merah muda. Berguna dan sulit untuk dilewatkan!
sumber
Saya telah menemukan solusi lain:
Ubah
.screenrc
, jadi sesi layar saya terlihat sangat berbeda dari terminal normal.sumber
.screenrc
file contoh .untuk melihat sesi Anda dan
untuk menyambung kembali ke yang terputus, jika terlepas.
untuk menyambung kembali ke yang terputus.
sumber
Lakukan a
screen -ls
. Ini akan secara eksplisit menunjukkanAttached
versusDetached
status.Contoh terlampir:
Contoh terlepas:
sumber