Linux下用Python来批量修改文件名

我们在维护系统的时候,有时候遇到需要批量修改一个文件夹下的所有文件名,这个时候,如果用人工手动的去修改的话,那就太没有效率了,这个时候我们需要一个脚本来完成我们的任务,当然用shell,perl也可以完成,今天这里介绍的是用Python来解决这个问题,我们假设在/root/test/下面有4个文件,他们的名字分别是

text1.txt,text2.txt,text3.txt,text4.txt,我们需要把他们批量修改掉文件名,下面我们来看下代码:

#!/usr/bin/env python

import os

import shutil

import time


#dir=raw_input("please input which Directory-Name to Rename:")

#可以写成提示你输入文件夹的名字和路径


dir = "/root/test/"

#这里是预先设置好的需要修改的文件夹,可以随便修改


if os.path.isdir(dir):  # 判断是否存在路径

        print ("Directory is exit")

else:

        print ("Directory is not exit,please input right dir....") 

#如果不存在,就提示。。。

        time.sleep(5)     #程序休眠5秒

        exit()            #程序自动退出

filelist=[]


filelist=os.listdir(dir) #得到文件名

#print filelist


for i in filelist:

        NewFile=i.replace("text","re")   

       #新的更名后的文件名,可以随便更换,这里是把”text“更改为“re”

        print NewFile     #打印文件名,用于测试,其实可以注释掉

       

        shutil.move(dir+i,dir+NewFile)   #核心语句,开始修改

  #正式修改,千万一定要加上前面的dir这个路径,否则会报错,如果感兴趣,可以试验下,不加路径是啥后果。。。

linux

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/23122.html