You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写脚本检测文件夹内是否仍有文件在创建?

检测文件夹是否停止文件创建的脚本实现

针对你需要的「文件夹文件列表连续5秒不变则判定停止创建」的需求,这里提供两种常用的实现方案:

Python 实现

用Python写的脚本兼容性好、跨平台,处理特殊文件名也更稳妥:

import os
import time

def monitor_folder(folder_path, stable_duration=5):
    last_files = set(os.listdir(folder_path))
    stable_timer = 0
    check_interval = 1  # 每秒检查一次

    while True:
        current_files = set(os.listdir(folder_path))
        if current_files == last_files:
            stable_timer += check_interval
            if stable_timer >= stable_duration:
                print(f"文件夹 {folder_path} 已连续{stable_duration}秒无新文件创建")
                break
        else:
            stable_timer = 0
            last_files = current_files
        time.sleep(check_interval)

if __name__ == "__main__":
    target_folder = "/path/to/your/target/folder"  # 替换成你的目标路径
    if not os.path.isdir(target_folder):
        print(f"错误:路径 {target_folder} 不是有效文件夹")
        exit(1)
    monitor_folder(target_folder)

逻辑说明

  • 用set存储文件列表,对比效率更高
  • 每秒检查一次文件夹内容,若和上次一致则累加计时,直到达到5秒阈值
  • 只要文件列表有变化(新增/删除),就重置计时和参考列表

Shell 脚本实现

如果你在Linux/macOS环境下,Shell脚本更轻量,无需额外安装依赖:

#!/bin/bash

TARGET_FOLDER="/path/to/your/target/folder"  # 替换成你的目标路径
STABLE_DURATION=5
CHECK_INTERVAL=1

if [ ! -d "$TARGET_FOLDER" ]; then
    echo "错误:路径 $TARGET_FOLDER 不是有效文件夹"
    exit 1
fi

last_files=$(ls -1 "$TARGET_FOLDER")
stable_timer=0

while true; do
    current_files=$(ls -1 "$TARGET_FOLDER")
    if [ "$current_files" = "$last_files" ]; then
        stable_timer=$((stable_timer + CHECK_INTERVAL))
        if [ "$stable_timer" -ge "$STABLE_DURATION" ]; then
            echo "文件夹 $TARGET_FOLDER 已连续$STABLE_DURATION秒无新文件创建"
            break
        fi
    else
        stable_timer=0
        last_files="$current_files"
    fi
    sleep $CHECK_INTERVAL
done

注意事项

  • ls -1确保每个文件名占一行,避免空格导致的对比错误
  • 如果要监控子文件夹,可以把ls -1换成find "$TARGET_FOLDER" -type f来递归获取所有文件
  • 文件名包含特殊字符时,Python版本的容错性更强

内容的提问来源于stack exchange,提问作者Dinu Mihai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 18:31:10