当前位置: 首页 > backend >正文

实用生活c语言脚本

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <time.h>

// 清理临时文件目录
void clean_temp_directory() {
    const char* temp_dir = "/tmp";  // 可自定义需要清理的目录
    char command[1024];
    
    // 构建清理命令(删除7天前的文件)
    snprintf(command, sizeof(command), "find %s -type f -mtime +7 -delete", temp_dir);
    
    if (system(command) != 0) {
        fprintf(stderr, "清理临时文件失败\n");
    } else {
        printf("临时文件清理完成\n");
    }
}

// 检查当前时间是否到达执行时间(示例为每天凌晨1点)
int should_execute() {
    time_t now = time(NULL);
    struct tm* time_info = localtime(&now);
    
    // 设置执行时间(1点0分0秒)
    return (time_info->tm_hour == 1 && time_info->tm_min == 0 && time_info->tm_sec == 0);
}

int main() {
    printf("日常清理服务启动\n");
    
    while (1) {
        // 每分钟检查一次时间
        if (should_execute()) {
            clean_temp_directory();
        }
        sleep(60);  // 每分钟检查一次
    }
    
    return 0;
}
    

这个 C 语言脚本实现了日常文件清理功能,主要包含以下特性:

  1. 定时检查:每分钟检查一次当前时间,判断是否到达预设的执行时间(示例为每天凌晨 1 点)
  2. 清理功能:使用系统命令清理指定目录下 7 天前的旧文件(默认清理 /tmp 目录,可通过修改temp_dir变量自定义)
  3. 循环运行:程序启动后会持续运行,适合作为后台服务
  4. 错误处理:包含基本的命令执行结果检查

使用说明:

  1. 编译:gcc daily_cleaner.c -o daily_cleaner
  2. 运行:./daily_cleaner
  3. 自定义:
    • 修改temp_dir变量设置需要清理的目录
    • should_execute函数中修改tm_hour/tm_min/tm_sec设置执行时间
    • 调整mtime +7中的数字修改文件保留天数
http://www.xdnf.cn/news/1168.html

相关文章:

  • Linux-skywalking部署步骤并且添加探针
  • springboot项目配置springMVC
  • DB-GPT支持mcp协议配置说明
  • leetcode 二分查找
  • TS-300B浊度传感器详解(STM32)
  • 欧拉计划 Project Euler53(组合选择)题解
  • 零基础上手Python数据分析 (21):图表选择困难症?常用可视化类型详解与应用场景指南
  • Python简介
  • 121.在 Vue3 中使用 OpenLayers 实现去掉鼠标右键默认菜单并显示 Feature 信息
  • java实现 PDF中的图片文字内容识别
  • 黑马点评之Feed流技术实现关注推送与滚动分页查询
  • MQTTX + MCP:MQTT 客户端秒变物联网 Agent
  • 凤凰架构-笔记
  • 如何在 Java 中从 PDF 文件中删除页面(教程)
  • wps批量修改字体
  • 极狐GitLab 权限和角色如何设置?
  • element-ui、element-plus表单resetFields()无效的坑
  • 研发效率破局之道阅读总结(3)工程优化
  • OpenVINO教程(二):图片目标检测推理应用
  • IDEA创建Gradle项目然后删除报错解决方法
  • [PTA]2025 CCCC-GPLT天梯赛 胖达的山头
  • 基于ssm的新冠疫情下基于java的校园出入系统(源码+文档)
  • 双卡 4090 服务器租用:释放强算力的新选择​
  • 代理模式(Proxy Pattern)详解:以延迟加载图片为例
  • 2.5 函数的拓展
  • 联易融科技:以科技赋能驱动经营反转与价值重估
  • Java多线程编程初阶指南
  • Swiper、样式结构重用、GridGridItem
  • 力扣每日打卡17 49. 字母异位词分组 (中等)
  • SpringMVC入门