刪除指定目錄下指定字尾的檔案
//定時清除計劃任務日誌檔案,避免佔用太大磁碟空間
$folderpath = "/www/server/log";//要操作的目錄
$deltype = array('log');
foreach ($deltype as $file_type) {
clearn_file($folderpath, $file_type);
}
/**
*@param $path資料夾絕對路徑 $file_type待刪除檔案的字尾名
*return void
*/
function clearn_file($path, $file_type = 'bak')
{
//判斷要清除的檔案型別是否合格
if (!preg_match('/^[a-zA-Z]{2,}$/', $file_type)) {
return false;
}
//當前路徑是否為資料夾或可讀的檔案
if (!is_dir($path) || !is_readable($path)) {
return false;
}
//遍歷當前目錄下所有檔案
$all_files = scandir($path);
foreach ($all_files as $filename) {
//跳過當前目錄和上一級目錄
if (in_array($filename, array(".", ".."))) {
continue;
}
//進入到$filename資料夾下
$full_name = $path . '/' . $filename;
//判斷當前路徑是否是一個資料夾,是則遞迴呼叫函式
//否則判斷檔案型別,匹配則刪除
if (is_dir($full_name)) {
clearn_file($full_name, $file_type);
} else {
preg_match("/(.*)\.$file_type/", $filename, $match);
if (!empty($match[0][0])) {
echo $full_name;
echo '\n\n';
unlink($full_name);
}
}
}
}
多謝:網友
相關文章
- Linux下刪除指定資料夾下指定字尾名的檔案Linux
- liunx批量刪除指定字尾的檔案
- Linux刪除指定字尾名檔案的命令Linux
- py目錄下獲取指定字尾檔案打包成zip檔案
- Linux迴圈遍歷所有檔案,刪除指定字尾名檔案Linux
- Git刪除指定檔案Git
- Java 從指定URL下載檔案並儲存到指定目錄Java
- git 刪除歷史指定檔案Git
- [20180707]刪除結尾帶.的檔案與目錄.txt
- nodejs 統計算指定字尾,格式的檔案NodeJS
- 【轉載】windows下刪除指定日期前的檔案Windows
- Linux刪除指定時間之前的檔案Linux
- Git刪除暫存區的指定檔案Git
- Linux批量刪除指定型別的檔案Linux型別
- 對於C#winform介面開發中開啟指定的目錄及開啟指定目錄下的檔案C#ORM
- Linux 命令列刪除指定副檔名檔案Linux命令列
- Linux解壓檔案到指定目錄的方法Linux
- windows 把指定目錄的檔案複製到當前目錄Windows
- 【ZIP】打包過濾指定目錄和檔案
- linux shell 命令下批量新增檔案的字尾 和批量刪除 擁有某字尾的檔案Linux
- 電腦如何利用Bat刪除文字檔案指定字串?BAT字串
- Linux shell 根據時間批量刪除指定資料夾下的檔案Linux
- linux 刪除檔案或目錄——rmLinux
- Linux rm(刪除檔案/目錄) 命令Linux
- 刪除當前目錄下的所有可執行檔案
- php怎麼知道指定目錄中有哪些檔案PHP
- git下載倉庫指定目錄Git
- 字串-刪除指定字元字串字元
- Git刪除指定分支Git
- Git刪除指定commitGitMIT
- tar命令打包指定目錄及其檔案,而不包括其上級目錄
- linux 刪除問題 一次刪除多個目錄下的相同副檔名的檔案Linux
- windows下啟動cmd,開啟指定目錄,執行指定命令Windows
- Linux rm命令:刪除檔案或目錄Linux
- python獲取指定目錄所有檔案絕對路徑Python
- 刪除指定名稱的程式
- 得到txt空白行的行數、將txt檔案的空行刪除和刪除csv檔案中指定的行
- jupyter notebook 刪除指定 kernel