tail -f 搜索带有 * 匹配项和最新日期时间的文件

Tail -f search file with * match and latest date time

我正在尝试在与名称匹配的目录中找到最新文件。

以下示例无效

tail -f | ls -t /var/log/impala/impalad.demo.local.impala.log.INFO.* | head -1

tail: warning: following standard input indefinitely is ineffective
/var/log/impala/impalad.demo.local.impala.log.INFO.20180322-104843.43442

跟踪有最新时间的 impalad.demo.local.impala.log.INFO.* 的最佳方法是什么?

使用

tail -f $(ls -t /var/log/impala/impalad.demo.local.impala.log.INFO.* | head -1)

相反。 tail 需要一个文件来读取,您可以使用 ls -t /var/log/impala/impalad.demo.local.impala.log.INFO.* | head -1 获得该文件。不过,管道遵循 input | output 模式,因此您当前的方案不会让您走得太远。将文件名通过管道输入 tail 也不起作用,因为 tail 不期望来自标准输入的文件名。要将文件名传递给 tail,您必须将其作为参数传递。