使用Python脚本删除文件列表以外的所有文件

时间:2019-04-18 18:54:26

标签: python

我正在尝试删除未在excel或文本文件中列出的文件,或者,我想仅保留在excel或文本文件中列出的文件。维护文件路径至关重要。我原本以为我可以将文件从一个位置移动到另一个位置,但是我不确定python是否可以生成与名称和路径匹配的新父文件和子文件夹。

文本文件包含文件名和文件目录路径,而源文件夹仅包含jpeg。

我想说我曾尝试写点东西,但是我的python /编码技能非常有限。我一直在搜索SO,发现似乎是代码试图做同样的事情,但是我有点困惑如何从文本文件中实现文件列表。

这是我到目前为止正在看的

import os
from glob import glob
origin_path='C:\\Users\\pellison\\Desktop\\test_1\\Auto_Test\\'
destination_path='C:\\Users\\pellison\\Desktop\\test_2\\Auto_Test\\'

list_of_files_name=glob('C\\Users\\pellison\\Desktop\\test_1\\Auto_Test\*\*.txt')

for one_file in list_of_files_name:
    os.rename(one_file, destination_path+one_file)
os.remove(origin_path)

1 个答案:

答案 0 :(得分:-1)

如果使用的是Windows,则应在每个文件夹后使用\\。使用remove命令时要非常小心。 例子

    import os
    from glob import glob
    origin_path='C:\\Users\\yivtaft\\Desktop\\original_folder\\'
    destination_path=''C:\\Users\\yivtaft\\Desktop\\destination_folder\\'

    list_of_files_name=glob('*.txt')
    list_of_files_name.extend(glob('*.xlsx'))
    list_of_files_name.extend(glob('*.xls'))

    for one_file in list_of_files_name:
        os.rename(one_file, destination_path+one_file)
    os.remove(origin_path)