有没有办法动态刷新less命令?

有没有办法动态刷新less命令?

我喜欢这个watch命令,但它有它的局限性

watch我很想知道我是否可以模仿with的功能less。我主要寻找在通过运行脚本动态修改目录时滚动浏览目录的能力。

答案1

在 中less,您可以键入F( Shift+ F) 以继续阅读文件末尾(如tail -f);您可以键入:e文件名来查看不同的文件,但不幸的是,如果您输入当前文件的名称,less则不会重新加载该文件。然而,有一个技巧可以让它重新读取当前文件,建议萨布根顿:键入:e并输入不存在的文件的名称;这会导致 less 显示错误消息,然后重新加载当前文件。

如果您正在寻找 的替代方案watch ls,这里有一些:

  • 现代文件管理器(例如 Nautilus、Thunar、Konqueror、Dolphin、Finder)实时刷新视图。
  • Emacs 没有实时刷新功能,但是有了auto-revert-mode,它会每 5 秒重新加载文件或目录(延迟是可配置的)。
  • 虽然 w3m 主要是一个 Web 浏览器,但它也是一个不错的目录和文本文件查看器。按此键R重新加载(本地)URL。

答案2

Shift+F将会执行less类似的命令tail -f。也就是说,如果将更多数据附加到文件中,它就会刷新。

答案3

只需输入:

less +F filename

这模拟在编辑器中按“F”。

答案4

Rfor repaint 并不总是重新加载文件。[1]

始终重新加载文件的解决方法是按hq,这将打开“帮助”页面,然后退出。它有一个副作用,即强制重新加载文件。


R[1] 以下是一些重新加载和不重新加载的情况示例:

  • >>>变化:一定要重新加载
  • sed -i、gEdit、TextEdit:不要重新加载
  • 在 Linux 上,vi更改:DO 重新加载
  • 在 Mac 上,vi更改:请勿重新加载

我相信区别在于 inode 是否发生变化(您可以使用 进行检查ls -i foo.txt)。如果inode改变了,那么R就不起作用了。

相关内容