Saya baru saja mengalami masalah yang sama. Di layar versi terbaru, Anda dapat menentukan -q
tandai ke layar senyap, dan jangan tampilkan.
Sumber menunjukkan
if (rflag && (rflag & 1) == 0 && !quietflag)
jadi saya tidak tahu di mana Gilles menemukannya, atau kapan itu diubah.
Sayangnya, perilaku ini di-hard-code di sumbernya:pengujian yang sama digunakan untuk menentukan apakah akan memunculkan notifikasi "Layar baru..." dan untuk menentukan apakah akan dilampirkan ke sesi yang sedang berjalan. (Di sumber layar 4.0.3, (rflag && (rflag & 1) == 0)
di attacher.c
dan screen.c
— rflag
adalah 1 untuk -r
ditambah 2 untuk setiap -R
.)
Jika Anda ingin mengkompilasi ulang, tambalan itu sepele:hapus baris yang menampilkan pesan dari screen.c
.
Anda dapat menghilangkan pesan tersebut dengan mengetikkan sesuatu. Jika Anda tidak ingin mengetikkan kunci yang akan menjangkau aplikasi di dalam jendela layar, Anda dapat mengetikkan C-a `
atau beberapa kunci tidak terikat lainnya.
Solusi sederhana adalah segera melepaskan sesi layar (baik dengan C-a d
atau dengan detach
perintah di screenrc
mengajukan; -m
pada baris perintah tidak berfungsi untuk ini saat -R
juga ditentukan), kemudian lampirkan lagi (misalnya dengan menjalankan perintah yang sama lagi).
Solusi yang benar-benar kikuk tetapi sepenuhnya otomatis adalah dengan menyertakan baris berikut dalam screenrc
file untuk melewati pesan pada awalnya dan mengaktifkannya kembali satu detik kemudian:
msgwait 0
screen -t post_initialization 39 sh -c 'sleep 1; screen -X msgwait 5'
(39 adalah nomor jendela setinggi mungkin, ini adalah opsi waktu kompilasi (MAXWIN
).)
Perhatikan bahwa kedua solusi tersebut akan menyembunyikan pesan apa pun screen
memilih untuk ditampilkan saat dimulai, bukan hanya layar “Layar baru...” yang tidak berguna.