
有時,當我編譯腳本時,參數太長,以至於覆蓋了終端中的許多行。當我調整終端大小以便更清晰地閱讀時,內容不會自動重新調整以適應終端的大小。
有沒有辦法告訴終端機根據終端模擬器的視窗大小重新格式化其輸出?
我正在使用 gnome 終端
答案1
無法「告訴終端」「重新格式化」回滾緩衝區。緩衝區已經過去了。也就是說,有幾種可能的情況:
您要重新調整的文字不受任何應用程式控制,實際上位於緩衝區中。在這種情況下,就像上面提到的@SuperBOB一樣,幾個終端模擬器,包括Gnome終端,已經重新顯示緩衝區,以便在不同的地方發生換行;
文字由某些「全螢幕」應用程式控制(例如,由尋呼機顯示的文本,例如
less
或在文字編輯器中)。在這種情況下,可以要求應用程式重繪內容(透過發送重繪訊號,據我所知,該訊號通常分配給^L
(Control+L))。但很可能你的終端模擬器已經做到了這一點;該文字不受活動應用程式的控制,而是由某些工具顯示,該工具對輸出進行格式化(添加換行符)以匹配終端寬度。如果是這種情況,那麼你就不走運了,因為你不可能施展魔法。
為了進行更詳細的分析,我們需要知道哪個程式產生了輸出以及該程式和終端模擬器(例如 GNU screen
)之間連結了哪些工具。
答案2
Gnome 終端具有開箱即用的這種行為。可能是您在其中使用的工具?
答案3
Gnome-terminal 從 3.12 版本開始支援此功能(實際上重要的是底層庫 vte >= 0.36)。