Less

用 less 和 journalctl 打破跟隨模式

  • October 12, 2017

一個困擾同事的有趣煩惱:

如果你less是一個被附加到的文件,你可以點擊shift-f開始實時跟踪輸出流。然後,要停止跟踪輸出,請點擊ctrl- c,之後您可以像往常一樣導航和搜尋文件。

這在使用時不起作用journalctl。假設你想關注你的 nginx 日誌——你會執行journalctl -u nginx,然後是通常的shift——f開始關注輸出。但是,當您按下ctrl-時c,會less立即終止,而不是像跟隨文件時那樣退出“跟隨”模式並返回“導航”模式。

不用說,這非常煩人。為什麼會這樣,如何恢復正常功能?

正如在 ServerFault 上回答的那樣,這是因為less使用標誌呼叫K,這會導致它在收到^C字元時死亡,而不是返回到其命令提示符。

要解決此問題,請將變數導出SYSTEMD_LESS="FRSXM"到您的環境中。這是systemd傳遞給的標準標誌集less,減去K無法脫離跟隨模式的問題。

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