欢迎访问宙启技术站
智能推送

使用Python编写一个CMD脚本来批量处理文件

发布时间:2023-12-14 22:42:28

下面是一个使用Python编写的批量处理文件的CMD脚本,它可以实现以下功能:

1. 扫描指定文件夹下的所有文件;

2. 根据文件名或文件内容对文件进行筛选;

3. 对筛选出的文件进行批量处理,如复制、移动、重命名等。

import os
import shutil

# 定义源文件夹、目标文件夹和筛选条件
source_folder = "path/to/source/folder"  # 源文件夹路径
target_folder = "path/to/target/folder"  # 目标文件夹路径
filter_condition = ".txt"  # 筛选条件

# 扫描源文件夹下所有文件
file_list = os.listdir(source_folder)

# 遍历文件列表
for file_name in file_list:
    file_path = os.path.join(source_folder, file_name)
    
    # 判断是否满足筛选条件
    if filter_condition in file_name or filter_condition in open(file_path).read():
        
        # 进行批量处理
        try:
            # 复制文件
            shutil.copy(file_path, target_folder)
            
            # 如果需要移动文件,可以使用下面的语句替代复制文件的操作
            # shutil.move(file_path, target_folder)
            
            # 如果需要重命名文件,可以使用下面的语句
            # new_file_name = "new_file_name.txt"
            # shutil.copy(file_path, os.path.join(target_folder, new_file_name))
            
            print(f"成功处理文件: {file_name}")
        except Exception as e:
            print(f"处理文件失败: {file_name}, 错误信息: {str(e)}")

在上面的代码中,需要修改的地方包括:

1. 将"path/to/source/folder"替换为源文件夹的实际路径。

2. 将"path/to/target/folder"替换为目标文件夹的实际路径。

3. 将".txt"替换为你的筛选条件,如文件名后缀或文件内容的关键字。

使用这个CMD脚本,你可以对源文件夹下的所有文件进行批量处理。在try块中你可以根据需求添加各种文件处理操作,如复制、移动、重命名等。处理过程中会打印处理成功或失败的文件名。

例如,你希望将源文件夹中所有以".txt"结尾的文件复制到目标文件夹中,可以将filter_condition设置为".txt",并取消注释复制文件的代码行。运行这个CMD脚本后,程序会将满足条件的文件复制到目标文件夹中。

这只是一个简单的示例,你可以根据实际需求修改代码以适应不同的场景。