中斷 tmux 中很長的輸出

中斷 tmux 中很長的輸出

在(gnome)終端機中,如果我的cat文件太長,我可以隨時按Ctrl-c來中斷。

然而,在 中,當發生同樣的情況時, -按鍵tmux產生的信號需要很長時間才能到達伺服器,並且在此之前,伺服器正忙於此輸出,而我除了觀看洪水之外什麼也做不了(或使用不同的終端)。Ctrlc

這與所描述的問題有些相似這裡

我不想重新啟動終端機、伺服器,甚至特定的tmux視窗/窗格;使用less是一種聰明的習慣,但我在這裡問的是如何解決已經發生的問題,而不是如何聰明地透過思考再行動來避免它們......總會有驚喜!

那麼,有沒有辦法讓終端停止泛洪、丟棄發送的資料等呢?我可以做任何事情來讓自己擺脫這些煩人的事情分分鐘觀看螢幕上的角色?

答案1

兩個提案

  1. 很少在這種情況下CTRL+比+z 更有效:它回答得更快。之後,您可以掛起該命令,您可以使用該命令或任何作業編號來終止它。希望您仍然能夠從螢幕上讀取任何內容(大量的隨機二進位文字很容易弄亂您的字元集)。CTRLckill %1

  2. 在另一個終端機中,您可以詢問pgrep cat(是否cat調用了命令)並識別cat進程正在使用您的中央處理器或透過pstree

    pgrep cat | awk '{print "pstree -sp "$1}' | sh | grep tmux

    回答類似的輸出
    答案類似init(1)---lightdm(1428)---lightdm(2518)---init(2534)---多路復用器(22425)---bash(22426)---貓(22532

    在這種情況下,您只需killcat PID
    kill 22532

筆記:

  • 如果您按CTRL+CCTRL+z並在最小化視窗後,系統可能會比您更快讀取中斷請求。因此,暫停/中斷、最小化、等待、再次最大化,也可以是解決方案。
  • 正如你所說,less比較安全。
  • 使用 tmux 1.8 再次測試並工作

答案2

將以下行加入 tmux.conf (~/.tmux.conf)

set -g c0-change-trigger 150 set -g c0-change-interval 100

更多資訊可以在以下位置找到:http://blog.fraggod.net/2014/09/23/tmux-rate-limiting-magic-against-terminal-spamflood-lock-ups.html

相關內容