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

如何在NiFi流中获取源文件创建日期并据此重命名文件?

获取文件创建日期/时间并用于重命名

根据不同操作系统和开发工具,获取文件创建时间的方法有所区别,以下是几种常见场景的实现方式:

Python 实现

通过os和datetime模块即可完成文件创建时间获取与重命名操作:

  • 导入所需模块:
import os
import datetime
  • 获取并格式化创建时间(Windows与Linux/macOS的获取方式有差异):
file_path = "你的目标文件路径"
# Windows系统用getctime
create_timestamp = os.path.getctime(file_path)
# Linux/macOS系统用st_birthtime
# create_timestamp = os.stat(file_path).st_birthtime

# 转换为"YYYY-MM-DD_HH-MM-SS"格式的字符串
formatted_time = datetime.datetime.fromtimestamp(create_timestamp).strftime("%Y-%m-%d_%H-%M-%S")
  • 执行重命名:
file_dir, file_fullname = os.path.split(file_path)
file_name, file_ext = os.path.splitext(file_fullname)
new_fullname = f"{file_name}_{formatted_time}{file_ext}"
new_file_path = os.path.join(file_dir, new_fullname)
os.rename(file_path, new_file_path)

PowerShell 实现

直接通过文件对象的CreationTime属性获取创建时间,批量处理更高效:

# 替换为你的目标文件夹路径
Get-ChildItem -Path "目标文件夹路径" -File | ForEach-Object {
    $formatted_time = $_.CreationTime.ToString("yyyy-MM-dd_HH-mm-ss")
    $new_name = "{0}_{1}{2}" -f $_.BaseName, $formatted_time, $_.Extension
    Rename-Item -Path $_.FullName -NewName $new_name
}

Windows CMD 实现

借助forfiles命令提取创建时间,结合延迟变量扩展完成重命名:

@echo off
setlocal enabledelayedexpansion
set "target_dir=你的目标文件夹路径"
forfiles /p "%target_dir%" /m *.* /c "cmd /c set \"fname=@fname\" & set \"fext=@ext\" & set \"ftime=@fdate @ftime\" & set \"ftime=!ftime:/=-!\" & set \"ftime=!ftime::=-!\" & ren @path \"!fname!_!ftime!!fext!\""
endlocal

Linux/macOS Bash 实现

用stat命令获取创建时间,通过mv命令完成重命名:

# 替换为你的目标文件夹路径
for file in /目标文件夹路径/*; do
    if [ -f "$file" ]; then
        # macOS系统获取格式化时间
        create_time=$(stat -f "%SB" -t "%Y-%m-%d_%H-%M-%S" "$file")
        # Linux(以Ubuntu为例)
        # create_time=$(stat -c "%w" "$file" | cut -d' ' -f1,2 | tr ' :' '-')
        
        dir=$(dirname "$file")
        name=$(basename "$file" | cut -d. -f1)
        ext=$(basename "$file" | cut -d. -f2-)
        
        mv "$file" "$dir/${name}_${create_time}.${ext}"
    fi
done

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 10:15:41