我有一个来自PBX系统的大量通话记录,我需要将它们分类到更易于管理的文件夹中。
作为一个Linux菜鸟,如何搜索指定的文件夹,并根据文件的日期,将其移动到文件夹层次结构。
示例我将2013/04/23作为文件夹结构。
然后我有日期为
的文件20130403-blah283.mp3 20130403-blah284.mp3 20130403-blah285.mp3 20130403-blah286.mp3 20130403-blah287.mp3
等。任何帮助将不胜感激。
答案 0 :(得分:0)
这可能会给你一个起点:
型号:
<?php
$base_path = "/PATH_TO_FILES/";
//$files = glob($base_path."*.mp3");
$files = array('20130403-blah283.mp3','20130403-blah284.mp3','20130403-blah285.mp3','20130403-blah286.mp3','20130403-blah287.mp3'); // for testing
foreach($files as $file){
$pieces = explode("-",$file);
$new_filename = $pieces[1];
$timestamp = $pieces[0];
$directory = substr($timestamp,0,4)."/".substr($timestamp,4,2)."/".substr($timestamp,6)."/";
if(!is_dir($base_path.$directory)){
mkdir($directory,0777);
}
copy($base_path.$file,$base_path.$directory.$new_filename);
//unlink($base_path.$directory.$new_filename); // DELETES OLD FILE ONLY UNCOMMENT WHEN YOUR READY!
}