一周内的文件夹下的文件上传到HDFS

要将一周内的文件夹下的所有文件上传到HDFS,您可以使用以下 Python 脚本示例:

import datetime
import subprocess

# 获取当前日期
today = datetime.date.today()

# 获取上一周的开始日期和结束日期
last_week_start = today - datetime.timedelta(days=today.weekday() + 7)
last_week_end = today - datetime.timedelta(days=today.weekday() + 1)

# 假设文件夹路径为 /path/to/folder
folder_path = "/path/to/folder"

# 循环遍历一周内的日期
current_date = last_week_start
while current_date <= last_week_end:
    # 构造日期对应的文件夹路径
    date_folder = folder_path + "/" + str(current_date)

    # 构造上传命令
    hdfs_upload_cmd = "hdfs dfs -put " + date_folder + " /path/on/hdfs/"
    
    # 执行上传命令
    subprocess.run(hdfs_upload_cmd, shell=True)
    
    # 更新日期至下一天
    current_date += datetime.timedelta(days=1)

在上述示例中,您需要将 /path/to/folder 替换为实际的文件夹路径。同时,将 /path/on/hdfs/ 替换为希望上传到的 HDFS 路径。

这段代码会遍历一周内的日期,依次上传每个日期文件夹下的所有文件到 HDFS。请确保您对 HDFS 有适当的访问权限,以便执行上传操作。

希望以上代码能满足您的需求!如果您有任何其他问题,请随时向我提问。