Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cron Job - delete all files inside a specific folder

Tags:

php

cron

I want to delete all files inside a folder called " data " with php and using Cron Job, the

Cron Job is set to run script every hour, but i'm lost what should i write in the empty

textfield and and how delete all files inside a specific folder in php??

please someone explain me and help me out...

enter image description here

Fixed it:

Placed delete.php inside the empty field

and wrote inside delete.php the code down below:

<?php


define('PATH', 'folder/');

function destroy($dir) {
    $mydir = opendir($dir);
    while(false !== ($file = readdir($mydir))) {
        if($file != "." && $file != "..") {
            chmod($dir.$file, 0777);
            if(is_dir($dir.$file)) {
                chdir('.');
                destroy($dir.$file.'/');
                rmdir($dir.$file) or DIE("couldn't delete $dir$file<br />");
            }
            else
                unlink($dir.$file) or DIE("couldn't delete $dir$file<br />");
        }
    }
    closedir($mydir);
}
destroy(PATH);
echo 'all done.';


?>
like image 462
user1480092 Avatar asked Jul 06 '12 10:07

user1480092


People also ask

How do I delete all files from a certain name?

To delete matching files: enter *_bad. jpg in the search box, select the results and press Delete or Del.


2 Answers

in cpanel go to cron job if you want to delete the folder including its contents:

rm -rf /home/user/public_html/folder

if you want to remove everything in this folder, but leave the folder itself:

rm -f /home/user/public_html/folder/*
like image 187
Shuhad zaman Avatar answered Sep 30 '22 11:09

Shuhad zaman


Here's a function from PHP that can remove a file.

http://se2.php.net/unlink

And also, the example here; http://se2.php.net/manual/en/function.unlink.php#108940

Contains information on how you can delete files from a directory (just skip the rmdir at the bottom)

Edit: Forgot about the cron-thing. :)

If you create a file within your /home/a1206305/ called directory.php with this content:

<?php
    $path = "/home/a1206305/domain.com/data/";
    foreach(glob($path . "*") as $file)
    {
        if(is_file($path . $file))
            unlink($path . $file);
    }
?>

And then in that second field for cron, just write in directory.php

like image 41
NoLifeKing Avatar answered Sep 30 '22 12:09

NoLifeKing