用 Python 实现文件的批量移动并重命名

最近做 CSI 数据的采集工作。由于网络时断时续,使得采集到的数据保存在了不同的文件夹中,每个文件夹中的文件数量也参差不齐。为了后续使用方便,需要将这些数据文件统一命名并存放在同一个文件夹中。Python 无疑是实现这项工作的首选工具。下面给出我的 Python 代码。

import os, shutil

def batchRenameFile(srcDirName, destDirName):  # srcDirName 为源文件夹的绝对路径,真正保存数据文件的子文件夹都在该文件夹下;destDirName 为目标文件夹的绝对路径
    i = 1;
    subDirNameList = os.listdir(srcDirName)  # 获取真正保存数据文件的文件夹序列
    for subDirName in subDirNameList:
        fileList = os.listdir(srcDirName+'/'+subDirName)    # 此处须给出绝对路径
        for file in fileList[7::]:    # 由于每次采集信号时最初采集到的信号不稳定,因而将每次采集到的前 7 个文件忽略
            shutil.copy(srcDirName+'/'+subDirName+'/'+file, destDirName+'/csi'+str(i)+'.dat')  # 此处须给出绝对路径
            i = i+1
srcDirName = '/home/lihuiqi/PycharmProjects/CNN_Human_Behaviour_Detection/cnnHBD/csiDataFalling'
destDirName = '/home/lihuiqi/PycharmProjects/CNN_Human_Behaviour_Detection/cnnHBD/csiDataFallingNew'
batchRenameFile(srcDirName, destDirName)

注:对上述代码进行修改,也可以轻松地实现对文件夹中文件的递归操作,例如删除、移动、重命名等。

猜你喜欢

转载自blog.csdn.net/yueyinlizun/article/details/79944374

相关文章