Less

更少的命令卡在向前滾動中

  • February 26, 2020

當管道命令輸出到 less 時,我將使用滑鼠滾動到輸出的底部,我會發現 less 卡在向前滾動中,阻止我向後滾動輸出。這與按 的行為相同F。有沒有辦法從向前滾動中解鎖更少?

再現:docker-compose up | less接著按F

是的。

我相信less實際上在進入此模式時會說“等待數據……(中斷中止)”,至少當管道的左側沒有足夠快地產生數據時。

“中斷”的意思是“按Ctrl+C”。這將向less程序發送 INT(中斷)信號。

Ctrl+C將 INT 信號發送到目前位於 shell 前台的任何程序,就像kill -s INT pid從另一個終端執行的操作一樣(例如,其中pid可能是程序的程序 ID less)。有趣的事實。

為避免將中斷信號發送到管道左側的數據生成命令,您可以使該命令完全忽略該信號:

( trap '' INT && some-command ) | less

引用自:https://unix.stackexchange.com/questions/334174