linux定时任务执行php脚本删除文件

php代码

// 要删除的文件路径
$path = __DIR__ . "/runtime/temp_img/";

// 定义要删除的时间间隔:七天
$weekSecond = 7 * 24 * 3600;

$num = 0;
if (is_dir($path)) {
    // 获取目录句柄
    $handle = opendir($path);
    // 循环读取出文件
    while ($temp = readdir($handle)) {
        // 忽略系统文件
        if ($temp == ‘.‘ || $temp == ‘..‘) {
            continue;
        }
        // 获取文件信息
        $info = stat($path . $temp);
        if ((time() - $info[‘mtime‘]) > $weekSecond) {
            // 删除超过七天未修改过的文件
            unlink($path . $temp);
            $num++;
        }
    }
    // 关闭句柄
    closedir($handle);
}

// 写日志
echo date(‘Y-m-d H:i:s‘, time()) . ‘ clean up file number: ‘ . $num . "\r\n";

linux命令

# 打开定时任务编辑列表文件:crontab -e

# 添加以下任务,然后保存即可生效
0 22 * * * /usr/local/php-5.6.26/bin/php /usr/local/apache/htdocs/ClientPortalRebuild/cp/pluginPortal/deleteFile.php 2>&1 1>> /usr/local/apache/htdocs/ClientPortalRebuild/cp/pluginPortal/log/log.log

说明:

1. * 22 * * *   # 每天22点执行脚本

2. /usr/local/php-5.6.26/bin/php # php启动器

3. /usr/local/apache/htdocs/ClientPortalRebuild/cp/pluginPortal/deleteFile.php # 要执行的php脚本

4. 2>&1 # 2是错误信息,1是正确信息,加起来就是正确的和错误的信息

5. 1>> /usr/local/apache/htdocs/ClientPortalRebuild/cp/pluginPortal/log/log.log # 在第4点规定的信息统一写到这个路径下的日志文件中

至此搞定~~

附上crontab任务命令说明链接:https://www.runoob.com/w3cnote/linux-crontab-tasks.html

原文地址:https://www.cnblogs.com/waterliang/p/12096846.html

时间: 2024-10-11 01:32:13

linux定时任务执行php脚本删除文件的相关文章

linux定时任务执行python脚本

企业微信应用--值日生,每周一三五发消息给同学打扫卫生.脚本利用linux的定时任务crontab来执行,每天跑一遍. 1.开启crontab日志. crontab默认不开启日志,所以先开启定时任务的日志来查看 修改rsyslog服务,将 /etc/rsyslog.d/50-default.conf  文件中的 #cron.* 前的 # 删掉:用service rsyslog restart重启rsyslog服务: 2.写定时任务 crontab -e 开启本用户的定时任务,即创建以本用户名为文

Linux中执行shell脚本的4种方法

这篇文章主要介绍了Linux中执行shell脚本的4种方法总结,即在Linux中运行shell脚本的4种方法,需要的朋友可以参考下. bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/root/bin目录中并已有执行权限(添加权限的方法:chmod +x hello.sh). 方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本: ./ 的意思是说在当前的工作目录下执行hello.sh.如果不加上

如何在linux中执行一个脚本

---恢复内容开始--- 如何在LINUX中在系统启动时自动执行一个执行脚本 如果是开机马上执行的脚本,可以将脚本写到rc.local中: 如果是用户登录后自动执行脚本,可以将脚本写到相应的用户目录下"-/.bash_profile",若脚本"-/.bash_profile"不存在,可以直接拷贝"/etc/profile"命名为"-/.bash_profile": 如果是要任一用户登录后自动执行脚本,可以将脚本写到"

Linux中执行shell脚本

这篇文章主要介绍了Linux中执行shell脚本的4种方法总结,即在Linux中运行shell脚本的4种方法,需要的朋友可以参考下 bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限.方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本:复制代码 代码如下: cd /data/shell./hello.sh ./的意思是说在当前的工作目录下执行hello.s

Linux基础 linux系统中的批量删除文件与空文件删除的命令介绍

Linux基础教程  linux系统中的批量删除文件与空文件删除的命令介绍 Linux资料下面删除文件或者目录命令rm(remove): Linux培训功能说明:删除文件或目录. 语 法:rm [-dfirv][--help][--version][文件或目录...] 补充说明:执行rm指令可删除文件或目录,如欲删除目录必须加上参数"-r",否则预设仅会删除文件. 参 数: -d或--directory 直接把欲删除的目录的硬连接数据删成0,删除该目录. -f或--force 强制删除

Linux基础教程 linux系统中的批量删除文件与空文件删除的命令介绍

linux下面删除文件或者目录命令rm(remove): 兄弟连Linux培训 功能说明:删除文件或目录. 语 法:rm[-dfirv][--help][--version][文件或目录...] 补充说明:执行rm指令可删除文件或目录,如欲删除目录必须加上参数"-r",否则预设仅会删除文件. 参 数: -d或--directory直接把欲删除的目录的硬连接数据删成0,删除该目录. -f或--force强制删除文件或目录. -i或--interactive删除既有文件或目录之前先询问用户

linux下执行sql脚本链接整理

linux下执行sql脚本        :http://blog.csdn.net/huoyunshen88/article/details/11556951

linux 定时执行shell脚本 定时任务

本文讲述crontab具体用法,以供备忘. 在oracle 中可以利用dbms_job包定时执行pl/sql.sql过程,在像备份等需要在操作系统级定时任务只能采用crontab来完成 利用crontab来定时执行任务大致有如下三步: 1.编写shell脚本 2.利用crontab加入到定时任务队列 3.查看作业完成情况 一.如何建立shell脚本 linux下有很多不同的shell,但我们通常使用bash(bourne again shell)进行编程,因为bash是免费的并且很容易使用 程序

linux 定时执行shell脚本

转自:http://blog.csdn.net/jingxiangren/article/details/4745631 在oracle 中可以利用dbms_job包定时执行pl/sql.sql过程,在像备份等需要在操作系统级定时任务只能采用crontab来完成 本文讲述crontab具体用法,以供备忘. 在oracle 中可以利用dbms_job包定时执行pl/sql.sql过程,在像备份等需要在操作系统级定时任务只能采用crontab来完成 利用crontab来定时执行任务大致有如下三步: