local_dir = "/home/zhengjianfeng/ljh/hive/tmp/%s/%s" % (table, partition_date)#本地文件路径 if not os.path.exists(local_dir):#如果本地没有local_dir这个路径就创建这个路径 os.makedirs(local_dir) files = os.listdir(local_dir) if files: for file in files: os.remove("%s/%s" % (local_dir, file)) for file_path in files_path: logger.info("下载hdfs文件至本地:%s" % file_path) cmd = "hdfs dfs -get %s %s" % (file_path, local_dir) files_str = exec_shell(cmd) if len(os.listdir(local_dir)) == len(files_path):
时间: 2024-04-05 20:33:05 浏览: 139
根据代码,这段程序的作用是从 HDFS(分布式文件系统)下载文件到本地,并检查下载文件的数量是否和指定的文件数量相等。如果不相等,说明下载失败,否则说明下载成功。其中,程序会先创建本地文件夹路径,然后清空该路径下的文件,接着通过执行命令 `hdfs dfs -get` 将 HDFS 上的文件下载到本地文件夹路径中。最后,通过比较本地文件夹中的文件数量和指定的文件数量是否相等,来判断下载是否成功。
阅读全文