Поиск недавно измененных файлов

При подозрении на вирус полезно посмотреть недавно измененные файлы.
Но файлов в современных админках десятки тысяч, а папок — тысячи.

Ниже — коротенький скрипт для поиска свежих файлов.
Его же можно использовать для поиска файлов по названию.
Его же можно использовать для поиска файлов по размеру (это может быть полезно при ограниченном месте на диске).


<?
if(!isset($_GET['d'])) die("Скрипт находит все файлы, измененные после некоторой даты.<br/>
Для работы поместите скрипт в любую папку.<br> вызов скрипта: list.php?d=dd&m=mm&y=yyyy&h=hh<br>
где d:m:y:h - день, месяц, год и час после которого произошли изменения");
$d = $_GET['d'];
$m = $_GET['m'];
$y = $_GET['y'];
$h= $_GET['h'];


function listdir($path)
{ GLOBAL $t2;
$dh=@opendir($path);
if($dh)
{
while (false !== ($file=readdir($dh)))
{
// исключили папку cache
if(is_dir("$path/$file") and !strpos(' '.$file, 'cache') )
{
if (($file=='.') or ($file=='..')) continue;
listdir("$path/$file");
}
else
{
$t= filemtime("$path/$file");
if(($t > $t2 )) echo "<span style='color:red'><b>$path/$file</b> ". date("d-M-y H:i:s",$t)." </span><br/>";
// ищем конкретный файл
if(strpos("$path/$file", 'MailInvoker.php')) echo "<p style='color:green; font-size:16px; ont-weight:bold'>$path/$file". date("d-M-y H:i:s",$t)." </p>";
}
}
closedir($dh);
}
else echo "open error $path<br>";
return TRUE;
}


$t2=mktime ($h,0,0, $m ,$d, $y);
listdir('../');
echo 'готово';
?>