以下是一个示例解决方法,使用Python编写:
import os
import shutil
def copy_files(src_dir, dst_dir):
# 遍历源目录中的所有文件和子目录
for root, dirs, files in os.walk(src_dir):
# 获取相对路径(相对于源目录)
relative_path = os.path.relpath(root, src_dir)
# 构建目标目录的路径
dst_path = os.path.join(dst_dir, relative_path)
# 创建目标目录
os.makedirs(dst_path, exist_ok=True)
# 复制文件到目标目录
for file in files:
src_file = os.path.join(root, file)
shutil.copy(src_file, dst_path)
# 示例调用
src_dir = "path/to/source_directory"
dst_dir = "path/to/destination_directory"
copy_files(src_dir, dst_dir)
这个示例代码中,我们使用os.walk
函数遍历源目录中的所有文件和子目录。对于每个子目录,我们首先获取其相对路径(相对于源目录),然后根据相对路径构建目标目录的路径,并使用os.makedirs
函数创建目标目录。接着,我们遍历源目录中的所有文件,将每个文件复制到相应的目标目录中,使用shutil.copy
函数实现文件的复制操作。
通过这种方式,我们可以保持输出路径的目录结构与输入路径相同,实现巴别输出。
上一篇:保持顺序替换列中的精确数字
下一篇:保持输入请求为JSON格式。