linux设置定时任务删除指定文件夹下文件

1 创建定时任务脚本

#!/bin/bash

# 设置要删除文件的目录路径
directory="/home/data"

# 计算1分钟前的时间戳
timestamp=$(date -d "1 minute ago" +%s)

# 定义日志文件路径
log_file="/path/to/task.log"

# 清空日志文件
> "$log_file"

# 遍历目录下的文件
for file in "$directory"/*; do
    # 获取文件的创建时间戳
    file_timestamp=$(stat -c %Y "$file")

    # 检查文件是否是1分钟前创建的
    if (( file_timestamp < timestamp )); then
        # 删除文件
        rm "$file"
        echo "已删除文件: $file" >> "$log_file"
    fi
done

然后,将该脚本保存为一个可执行文件,比如delete_old_files.sh。接着,编辑cron定时任务,将日志输出到task.log文件中。

2 将定时任务 加到cron表中

        2.1打开终端,并输入crontab -e以编辑cron表。

        2.2在打开的文件中,添加一行类似于以下内容的定时任务:

     0 0 * * * /path/to/delete_old_files.sh >> /path/to/task.log 2>&1

这表示每天的午夜0点运行delete_old_files.sh脚本,并将标准输出和标准错误重定向到task.log文件中。

        2.3保存并关闭文件。 

cron将在每天0点运行该脚本,并将删除文件的操作记录到task.log文件中。请确保替换路径为你实际的文件路径,并确保你具有足够的权限执行删除操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值