案例場景:
screen有日志功能,但如果沒有提前配置又想保存當前窗口所有輸出,怎么辦?
方案1
如果只是少量內容需要復制,使用 ctl-A Esc
進到 copy/scrollback
模式,使用鼠標滾軸上下滾,拖選復制就可以了。
方案2
如果有大量內容需要復制,使用滾軸上下拖動或使用 J
K
或方向鍵上下移動,也只能一屏一屏的復制。有沒有辦法全選復制?
可以使用如下辦法實現全選復制:
- step1: 使用組合鍵
ctl-a [
進入copy/scrollback模式 - step2: 使用
PgUp
鍵向上移動光標到歷史輸出的第一行,然后敲一個空格或回車,這時提示你已標記第一行 - step3: 使用
PgDn
鍵向下移動光標到歷史輸出的最后一行,然后敲一個空格或回車,這時提示你已拷貝XXX個字符 - step4: 使用組合鍵
ctl-a >
這時命令提示,內容已使存到/tmp/screen_exchange文件中。
通過以上四步,可以把之間的歷史輸出都保存到文件中。
方案3
如果只是想要以后生成的輸出,之前的不想要了。有更簡單的命令: ctl-a shift-h
,提示打開當前目錄的log日志screenlog.0
從執行命令開始,后面的所有輸出都會被記錄在日志文件中screenlog.0,再執行這個命令一遍提示關閉日志文件,輸出不再保存到日志。