【问题标题】:php script to analyze files用于分析文件的php脚本
【发布时间】:2017-10-07 05:49:00
【问题描述】:

我有一些 db 日志文件,我想使用 php 脚本进行监控。日志每天生成,我希望能够监控今天的数据库日志文件是否已创建。输出格式如下:

1.xxx_2017-05-05_00h30m.Friday.sql.gz
2. xxx_2017-05-08_00h30m.Monday.sql.gz
3. xxx_2017-05-09_00h30m.Tuesday.sql.gz

使用 php,我如何检查今天的文件,例如 (xxx_2017-05-09_00h30m.Tuesday.sql.gz),脚本将每天运行以检查当天的文件。

有什么想法吗?

【问题讨论】:

标签: php regex linux bash scripting


【解决方案1】:

正如 cmets 中所说,您可以将 glob() 与正则表达式结合使用:

<?php
$regex = '_' . date("Y-m-d") . '_';
foreach (glob($regex) as $filename) {
    echo "$filename" . "\n";
}
?>

【讨论】:

    【解决方案2】:

    使用preg_match/(\d{4}-\d{2}-\d{2})/循环文件名

          <?php
    
         $dateArray = preg_match("/(\d{4}-\d{2}-\d{2})/", 'xxx_2017-05-05_00h30m.Friday.sql.gz', $match);
    
         if($match[0]==date('Y-m-d'))
         {
             echo "today log file exists";
    
         }else{
             echo "today don't have any log files";
         }
    
        ?>
    

    【讨论】:

    • 谢谢,我将不得不展开它,因为我将这些日志文件放在不同的文件夹中,例如:/mnt/back、/mnt/sa、mnt/con。这些日志位于所有这些文件夹中。
    • 如果我的答案有用,请用绿色勾号标记它对将来的用户参考很有用@s​​awe
    猜你喜欢
    • 2019-02-04
    • 2017-04-25
    • 2012-07-10
    • 2011-04-27
    • 2017-05-23
    • 1970-01-01
    • 1970-01-01
    • 2013-11-27
    • 1970-01-01
    相关资源
    最近更新 更多