Python:如何将文件夹列表(包含子文件夹)移动到新目录
Python: How to move list of folders (with subfolders) to a new directory
我有一个目录,实际上有 3000 多个文件夹(所有文件夹都有子文件夹)。
我需要做的是查看这些文件的目录并将它们移动到另一个文件夹。我做了一些研究,发现 shutil 用于移动文件,但我不确定如何输入要查找的文件列表。
例如,在目录中,我想将以下文件夹(及其子文件夹)移动到另一个名为 "Merge 1"
的文件夹中
1442735516927
1442209637226
1474723762231
1442735556057
1474723762187
1474723762286
1474723762255
1474723762426
1474723762379
1474723762805
1474723762781
1474723762936
1474723762911
1474723762072
1474723762163
1474723762112
1442209642695
1474723759389
1442735566966
我不知道从哪里开始,所以非常感谢您的帮助。谢谢!
结合使用 os 和 shutil,以下代码应该可以回答您的具体问题:
import shutil
import os
cur_dir = os.getcwd() # current dir path
L = ['1442735516927', '1442209637226', '1474723762231', '1442735556057',
'1474723762187', '1474723762286', '1474723762255', '1474723762426',
'1474723762379', '1474723762805', '1474723762781', '1474723762936',
'1474723762911', '1474723762072', '1474723762163', '1474723762112',
'1442209642695', '1474723759389', '1442735566966']
list_dir = os.listdir(cur_dir)
dest = os.path.join(cur_dir,'/path/leadingto/merge_1')
for sub_dir in list_dir:
if sub_dir in LL:
dir_to_move = os.path.join(cur_dir, sub_dir)
shutil.move(dir_to_move, dest)
我有一个目录,实际上有 3000 多个文件夹(所有文件夹都有子文件夹)。
我需要做的是查看这些文件的目录并将它们移动到另一个文件夹。我做了一些研究,发现 shutil 用于移动文件,但我不确定如何输入要查找的文件列表。
例如,在目录中,我想将以下文件夹(及其子文件夹)移动到另一个名为 "Merge 1"
的文件夹中1442735516927 1442209637226 1474723762231 1442735556057 1474723762187 1474723762286 1474723762255 1474723762426 1474723762379 1474723762805 1474723762781 1474723762936 1474723762911 1474723762072 1474723762163 1474723762112 1442209642695 1474723759389 1442735566966
我不知道从哪里开始,所以非常感谢您的帮助。谢谢!
结合使用 os 和 shutil,以下代码应该可以回答您的具体问题:
import shutil
import os
cur_dir = os.getcwd() # current dir path
L = ['1442735516927', '1442209637226', '1474723762231', '1442735556057',
'1474723762187', '1474723762286', '1474723762255', '1474723762426',
'1474723762379', '1474723762805', '1474723762781', '1474723762936',
'1474723762911', '1474723762072', '1474723762163', '1474723762112',
'1442209642695', '1474723759389', '1442735566966']
list_dir = os.listdir(cur_dir)
dest = os.path.join(cur_dir,'/path/leadingto/merge_1')
for sub_dir in list_dir:
if sub_dir in LL:
dir_to_move = os.path.join(cur_dir, sub_dir)
shutil.move(dir_to_move, dest)