有没有什么方法可以知道less
在哪里分页?
我原本希望^L
(换页符/分页符)可以做到这一点,但发现它不行。我尝试了以下方法:
The first page.
It is three lines
long.
^L
The second page.
Two lines only.
^L
The third page is short.
...
我想less
在终端顶部开始显示第 1 行,按下一次键后,第 5 行应该出现在终端顶部。再按下一次键后,应该是第 8 行。
据我在帮助中看到的,我可以跳转到一行或一个窗口(或跳到特定的一行)。
(如果less
做不到,有没有可以的传呼机?)
答案1
来自较少的帮助:
MOVING
e ^E j ^N CR * Forward one line (or N lines).
y ^Y k ^K ^P * Backward one line (or N lines).
f ^F ^V SPACE * Forward one window (or N lines).
b ^B ESC-v * Backward one window (or N lines).
z * Forward one window (and set window to N).
w * Backward one window (and set window to N).
ESC-SPACE * Forward one window, but don't stop at end-of-file.
d ^D * Forward one half-window (and set half-window to N).
u ^U * Backward one half-window (and set half-window to N).
ESC-) RightArrow * Left one half screen width (or N positions).
ESC-( LeftArrow * Right one half screen width (or N positions).
作为一种解决方法,您可以在 less 中按 来使用文本编辑器(例如 vim 来跳转到所需的行或其他内容)v
。
答案2
Emacs 具有默认键绑定功能,支持在文件中以 ^L 分隔的页面之间移动。还可以缩小缓冲区以仅显示当前页面。
答案3
/
通过键入和 Control-L来搜索换页符。然后键入n
以向下移动到下一页,键入N
以向上移动到上一页。
答案4
据我所知,less
目前还不能这样做。不过,它似乎仍在积极维护,所以我提交了github 上的一个问题请求此功能。我们将看看进展如何(我希望一切顺利!)。
我也不知道有其他寻呼机能完全满足您的要求。话虽如此,我觉得值得指出的是more
(的前身less
)确实有部分您所寻找的,因为它会[spacebar]在看到换页符时暂停输出(等待再次按下 )。它不会随后清除屏幕,因此您不会获得所寻找的“终端顶部”行为,但您至少会遇到必须在页面之间按下按键的情况。
如果您确实仍然有这种需要,希望其中一个或两个都能对您有所帮助。