酷徒LOGO

在文件夹中,最后修改的文件


问题:

我试着使用 tail -f 在指定文件夹中跟踪日志文件。 我可以用简单的命令来做这个 tail -f [path to file] 但是有一种方法可以有一个运行和跟踪文件夹中最近/最后修改过的文件的命令。 在这个领域没有任何专家,因此任何帮助都非常有用


回答 1:

你可以运行 ls -tp | sort | grep -v/| tail -n 1 然后将这些命令通过 for 循环运行,然后只针对最新文件运行 tail -f 命令,以监控内容更改。


for VAR in $(ls -tp | sort | grep -v/| tail -n 1); do tail -F $VAR; done



更多资源

  • ls

    
     -t sort by modification time, newest first
    
    
    
     -p, --indicator-style=slash
    
    
     append/indicator to directories
    
    
    
    
  • sort

  • grep

    
    -v, --invert-match
    
    
    Invert the sense of matching, to select non-matching lines. (-v is specified by POSIX. )
    
    
    
    
  • tail

    
     -n, --lines=[+]NUM
    
    
     output the last NUM lines, instead of the last 10; or use -n
    
    
     +NUM to output starting with line NUM
    
    
    
    

回答 2:

你可以使用 ,作为许多发行版的标准包。

示例 1: 在一个窗口中合并两个不同颜色的日志文件


multitail -ci green/var/log/yum.log -ci yellow -I/var/log/mysqld.log



enter image description here

示例 2: 显示五个日志文件,在一个列合并两个


 multitail -s 2 -sn 1,3/var/log/mysqld.log -I/var/log/xferlog/var/log/monitorix/var/log/ajenti.log/var/log/yum.log



enter image description here

源: - 在一个Linux终端系统中同时监视多个文件。






Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备17041772号-2  |  如果智培  |  酷兔英语  |  帮酷