Linux脚本之定时清空文件内容
发布日期:2021-05-08 09:34:42 浏览次数:18 分类:精选文章

本文共 1100 字,大约阅读时间需要 3 分钟。

Linux脚本之定时清空文件内容

以下是用于定时清空特定目录下的文件内容的Linux脚本开发说明

脚本要求

该脚本需满足以下条件:

  • 脚本文件命名为`rm_file.sh`
  • 定时任务针对`/home/tmp/`目录下的各个临时目录进行清空操作
  • 清空前统计每个临时目录的文件总大小,并记录到`/data/log/log.txt`文件中
  • 清空操作每天0点执行一次,同时将清空前的文件大小统计结果保存到`/tmp/`目录下的以当前时间命名的文件中
  • 脚本每隔1小时运行一次
  • 脚本内容

    以下是脚本的具体实现代码:

    ```bash #!/bin/bash # 脚本版本信息:V1.0 # 脚本作者:Emali # 创建时间:2021-05-05 11:50:48

    定义日志文件路径

    LOG_FILE=/tmp/$(date +%H-%F).log

    获取当前小时数

    current_hour=$(date +%H)

    for i in $(find /home/tmp/ -type d) do

    如果当前小时数是0(即每天0点)

    if [ $current_hour -eq 00 ]; then

    # 清空当前目录下的所有文件和子目录
    echo "$(du -sh $i)" >> /data/log/log.txt
    find $i -type f -exec rm -rf {} ;
    find $i -type d -exec rm -rf {} ;
    else
    # 每隔一个小时执行一次,记录到日志文件中
    echo "$(du -sh $i)" >> $LOG_FILE
    fi
    done

    脚本运行说明

    脚本运行步骤如下:

    1. 以root用户权限运行脚本:`./rm_file.sh`
    2. 查看日志文件内容:`cat /tmp/13-2021-05-05.log`
    3. 将脚本添加至cron定时任务表中:
    4. */1 * * * * /scripts/rm_file.sh

      该crontab命令表示每隔1小时运行一次脚本

    脚本设计特点:

    1. 支持自动化管理临时文件目录
    2. 日志记录详细记录每次清空操作的文件大小统计
    3. 支持按时间戳命名日志文件,便于追踪和管理
    4. 每小时运行一次,确保数据清理及时

    通过上述脚本和crontab配置,可以实现对`/home/tmp/`目录下的各个临时文件目录自动清空及文件大小统计功能,适合需要管理大量临时文件的场景。

    上一篇:Linux下的awk用法详解
    下一篇:计算机组成原理(知识体系-1)

    发表评论

    最新留言

    网站不错 人气很旺了 加油
    [***.192.178.218]2025年04月05日 02时32分07秒