网站建设

php 批量删除某种大小范围的文件

如何批量删除多个文件夹中的固定大小范围的*.cache文件?

条件:
1、总文件夹下有上千个子文件夹
2、批量删除子文件夹中 10k到30k 大小的*.cache文件
3、.php语言

winserver 服务器 

文件架结构是: 总文件夹下有上千个子文件夹, 子文件夹内均为*.cache文件,再没有文件夹啦!

../总文件夹/df/*.cache
../总文件夹/fg/*.cache
../总文件夹/qw/*.cache
../总文件夹/**/*.cache 

3088569的回答可用,但只能删除当前文件夹的相应文件,如果在上千个文件夹内都分别运行该文件的话,也挺累的,本人对php语言不慎了解,望修改完整,谢谢了! 

文件夹是随机生成的,命名没有规律啊


<?php
set_time_limit(0);
$dir = dirname(__FILE__);
$dirarr = scandir($dir);

foreach($dirarr as $subdir){
 if($subdir != '.' && $subdir != '..'){
  $path = $dir.'/'.$subdir;
  $files = glob($path.'/*.cache');
  foreach($files as $file){
   if(filesize($file) > 1024000 && filesize($file) <3072000)
   unlink($file);
  }
 }
}
echo '删除成功!';
?>

把这个保存到你的总文件夹下,命名为del.php,然后运行删除

Related Articles

发表回复

Back to top button