【发布时间】:2018-09-13 23:41:24
【问题描述】:
在跟踪日志文件时,我们可能会使用:
tail -f foo.log | grep bar
如果我们想更改 grep 参数,我们必须 ctrl-c 然后更改参数,然后重新启动命令。
我的问题是 - 有没有一种方法可以动态更改我们正在搜索的内容而无需终止 tail/grep 命令?
如果可能的话,还在寻找一种使用less 而不是tail 的方法。
【问题讨论】:
在跟踪日志文件时,我们可能会使用:
tail -f foo.log | grep bar
如果我们想更改 grep 参数,我们必须 ctrl-c 然后更改参数,然后重新启动命令。
我的问题是 - 有没有一种方法可以动态更改我们正在搜索的内容而无需终止 tail/grep 命令?
如果可能的话,还在寻找一种使用less 而不是tail 的方法。
【问题讨论】:
我知道您是在过滤后的自动滚动视图。
较少的手册页说明了有关 F 命令的内容:
向前滚动,并在文件结束时继续尝试读取 到达。通常这个命令会在已经结束时使用 的文件。这是一种监视文件尾部的方法 在观看的同时不断增长。 (行为类似于 “tail -f”命令。)
以下关于&命令
只显示匹配模式的行;行 不匹配的模式不显示。如果模式是空的(如果你 输入 & 紧跟 ENTER),任何过滤都被关闭, 并显示所有行。当过滤生效时,一个 & 符号显示在提示符的开头,作为提醒 文件中的某些行可能会被隐藏。
请注意,这些是较少的命令,而不是命令行开关。
您仍然必须中止自动滚动以更改模式,但您这样做并没有真正离开less。
【讨论】: