#!/usr/bin/php \n"; echo "ex.: ./polyfill.php sample_files 5000 1 ~/Desktop/\n"; die; } $sample = $argv[1]; $total = $argv[2]; $deep = $argv[3]; $dest = $argv[4]; $dmg = $dest."/Polyfill.sparsebundle"; if (file_exists($dmg)) { exec("trash ".$dmg."; umount -f /Volumes/Polyfill"); } exec("hdiutil create -size 1tb -fs HFS+ -type SPARSEBUNDLE -volname Polyfill -attach ".$dmg); $base = "/Volumes/Polyfill"; $sample_files = glob($sample."/*.*"); foreach($sample_files as $key => $file) { if (is_dir($file)) { unset($sample_files[$key]); } } for ($i = 0; $i < $total; $i++) { $stamp = md5(microtime()); $levels = array(); $levels[] = substr($stamp,0,2); $levels[] = substr($stamp,2,2); $levels[] = substr($stamp,4,2); $levels[] = substr($stamp,6,2); $levels[] = substr($stamp,8,2); $levels[] = substr($stamp,10,2); if ($deep) { $dest = $base."/".implode("/",$levels)."/".$stamp; $check = array(); $check[] = $base."/".$levels[0]; $check[] = $base."/".$levels[0]."/".$levels[1]; $check[] = $base."/".$levels[0]."/".$levels[1]."/".$levels[2]; $check[] = $base."/".$levels[0]."/".$levels[1]."/".$levels[2]."/".$levels[3]; $check[] = $base."/".$levels[0]."/".$levels[1]."/".$levels[2]."/".$levels[3]."/".$levels[4]; $check[] = $base."/".$levels[0]."/".$levels[1]."/".$levels[2]."/".$levels[3]."/".$levels[4]."/".$levels[5]; foreach ($check as $dir) { echo "check ".$dir."\n"; if (!file_exists($dir)) { mkdir($dir); } } } else { $dest = $base."/".$stamp; } $use = $sample_files[array_rand($sample_files)]; $ext = pathinfo($use, PATHINFO_EXTENSION); echo "cp ".$use." ".$dest.".".$ext."\n"; copy($use,$dest.".".$ext); //copy($use,dirname($dest)."/".basename($use)); // make many dupes } exec("open /Volumes/Polyfill"); ?>