可以更少地跟随(按 F)管道输入(类似于文件)吗?对于正在写入的文件,命令
less <file>
Run Code Online (Sandbox Code Playgroud)
按 F 时将跟随文件。
但是如果我有一个命令将输出直接输入到less中,就像这样
command | less
Run Code Online (Sandbox Code Playgroud)
按 F 什么也不做。
所以看起来管道不能像文件一样被跟踪?或者它可能与写入 STDERR 的命令有关?我想要达到的效果总是看到命令的最新输出:就像按住 PageDown 一样!
一个相关的评论适用于 G(转到结尾):当直接管道到 less 时,它将不起作用。
mik*_*mik 26
按F或G品牌less
力争达到输入EOF。如果输入是管道,则less
挂起直到管道在另一侧关闭(而不是“什么都不做”)。
这可以通过将命令输出保存到后台的临时文件来解决,然后将其用作以下内容的输入less
:
command > /tmp/x &
less +F /tmp/x; kill %; rm /tmp/x
Run Code Online (Sandbox Code Playgroud)
没有选项只能这样做less
;但是,我承认它会很有用。
可以更少地跟随(按 F)管道输入(类似于文件)吗?
是的,从版本 474 开始。
相关:有没有办法在不停止管道中的其他进程的情况下退出“较少”跟随模式?
作为参考,F 不使用管道的问题在已知错误列表中的参考编号为 300,标题为“F 命令不适用于管道输入”。
一个相关的评论适用于 G(转到结尾):当直接管道到 less 时,它将不起作用。
它从版本 466 开始工作。引用此版本的发行说明:
新命令 ESC-G 转到管道中当前缓冲数据的末尾