Bagaimana cara saya dengan mudah menyalin buffer scrollback Layar GNU ke file? Yaitu, versi yang lebih kuat dari perintah 'hardcopy'?
Di layar GNU, saya bisa menggunakan " Ctrl+ A Esc" untuk masuk ke buffer scrollback. Saya kemudian dapat menandai seluruh buffer dan menggunakan " Ctrl+ A Ctrl+ ]" untuk menempelkannya ke buffer Emacs , sehingga menyimpannya ke file.
Namun, ini membosankan. Apakah ada perintah Layar yang hanya akan menyalin buffer scrollback ke file, seperti 'hardcopy' lakukan untuk bagian layar yang terlihat?
sumber
screen -r
untuk menyambung kembali ke sesi yang ada, hardcopy tidak akan disimpan ke direktori aktif di dalam layar atau di mana Anda berada sebelum menggunakanscreen -r
. Saya pikir itu akan disimpan ke direktori di mana Anda pertama kali memulai sesi layar. Anda mungkin dapat mengubah ini dengan perintah hardcopydir .Tekan Ctrl+ A : bufferfile /tmp/somefile.txt ENTER , lalu Ctrl+A >
Ini akan menulis isi buffer saat ini ke file yang disebutkan.
sumber
TL; DR:
^A:writebuf <filename>
OP tampaknya menginginkan cara untuk menggunakan bagian buffer yang dipilih yang Anda dapatkan ketika melakukan ^ A [, memilih teks menggunakan spasi sebagai awal dan akhir, dan alih-alih menggunakan ^ A] untuk menempel, simpan bagian yang dihasilkan yang dihasilkan dari buffer ke file.
Ini berhasil:
^A:writebuf <filename>
Catatan: satu 'f' dalam writebuf
sumber
Coba
hardcopy -h
sertakan seluruh buffer.sumber
hardcopy -h
menulis kehardcopy.N
, di manaN
nomor jendela saat ini.Ini bekerja untuk saya:
Masuk ke mode edit (
~
) dan ketik:Itu menciptakan file besar, yang 98% kosong, tetapi log saya sepenuhnya hadir di sisa 2%.
sumber
Ctrl+ A,, :dan terbitkan perintah 'log on'.
Atau mengaturnya sebagai default dalam Anda screenrc file sebagai 'deflog pada'.
sumber
Do Ctrl+ A, H.
Itu menyimpan layar saat ini menjadi file hard copy, misalnya, hardcopy.0 untuk layar 0. Tampaknya menjadi cara yang lebih cepat daripada menjadi Ctrl+ A, :dan mengetik perintah hardcopy .
sumber