精华内容
下载资源
问答
  • Python文件重命名工具

    千次阅读 2009-07-25 15:48:00
    #Filename:brn.py#Description: batch replace certain words in file names#Use to bat rename the file in a dir(modify the suffix from a to b) for Windows Vista OSimport sysimport osimport fnmatchimpor

     #Filename:brn.py
    #Description: batch replace certain words in file names

    #Use to bat rename the file in a dir(modify the suffix from a to b) for Windows Vista OS
    import sys
    import os
    import fnmatch
    import re

    #parse params
    p=input("Please input work directory(current path for enter):")
    if p=='/r':
      p='.'
    p=p.rstrip('/r')
    print (p)
    while not os.path.exists(p):
      print (p+' is not existed.Please input the work directory:')
      p=input("Please input work directory(current path for enter):")
    s=input("Please enter the words which need be modified(must):")
    while s=='/r':
      s=input("Please enter the words which need be replaced(must):")
    s=s.rstrip('/r')
    d=input("Please enter the words which want to change to(must):")
    while d=='/r':
      d=input("Please enter the words which want to change to(must):")
    d=d.rstrip('/r')
    try:
      sure=input("Are you sure to rename the file named *"+s+"*"+" to *"+d+"*"+" in directory "+p+"? y/n:")
      sure=sure.rstrip('/r')
      if sure!='y':
        print ("Cancel")
      else:
        for root, dirs, files in os.walk(p, True):
            for file in files:
                print (os.path.join(root,file))
                if os.path.isfile(os.path.join(root,file)):#Only file is file,not a dir ,do this
                    if fnmatch.fnmatch(file, '*'+s+'*'):
                        f=str(file).replace(s,d)
                        if p=='.':
                            command='move '+str(file)+" "+f
                        else:
                            command="move "+os.path.join(root,file)+" "+os.path.join(root,f)
                        print (command)
                        if os.system(command)==0:#do actual rename
                            print ("Rename "+str(file)+" to "+f+" success")
                        else:
                            print ("Rename "+str(file)+" to "+f+" failed")
                    #else:
                      #print str(file)+" is a directory.omit"
             
    except IndexError:
      print (IndexError.message)

    展开全文
  • 重命名单个文件:mv 2.csv 樱花路309弄.csv批量重名名文件:import sys, string, os, shutil#-*- coding: utf-8 -*-#输入目录名和前缀名,重命名后的名称结构类似prefix_0001def RenameFiles(srcdir, prefix):...

    重命名单个文件:mv 2.csv 樱花路309弄.csv

    批量重名名文件:

    import sys, string, os, shutil

    #-*- coding: utf-8 -*-

    #输入目录名和前缀名,重命名后的名称结构类似prefix_0001

    def RenameFiles(srcdir, prefix):

    srcfiles = os.listdir(srcdir)

    index = 1

    for srcfile in srcfiles:

    print "srcfile===",srcfile

    srcfilename = os.path.splitext(srcfile)[0][1:]

    print "srcfilename===",srcfilename

    sufix = os.path.splitext(srcfile)[1]

    print "sufix===",sufix

    #根据目录下具体的文件数修改%号后的值,"%04d"最多支持9999

    # destfile = srcdir + "//" + prefix + "_%04d"%(index) + sufix

    destfile = srcdir + "//" + prefix + "_%04d"%(index) + sufix

    destfile = destfile.replace('000','')

    print "destfile===",destfile

    srcfile = os.path.join(srcdir, srcfile)

    print "srcfile===",srcfile

    os.rename(srcfile, destfile)

    index += 1

    srcdir = "/Users/yongjunwen/Desktop/Test_rename"

    prefix = "test_rename"

    RenameFiles(srcdir, prefix)

    展开全文
  • 获取当前工作目录获取执行命令的位置路径拼接路径拆分文件重命名删除文件复制文件遍历文件夹下的文件判断文件是否存在判断目录是否存在获取当前工作目录import sysprint(sys.path[0])获取执行命令的位置import os...

    前言

    更多内容,请访问我的 个人博客。获取当前工作目录

    获取执行命令的位置

    路径拼接

    路径拆分

    文件重命名

    删除文件

    复制文件

    遍历文件夹下的文件

    判断文件是否存在

    判断目录是否存在

    获取当前工作目录

    import sys

    print(sys.path[0])

    获取执行命令的位置

    import os

    print(os.getcwd())

    路径拼接

    由于不同的操作系统的路径分隔符不同,因此在做路径拼接时不要直接拼接字符串,而是通过 os.path.join() 函数,如下:

    import os

    os.path.join('/Users/pangao', 'test.txt')

    # /Users/pangao/test.txt'

    路径拆分

    同理,使用 os.path.split() 函数拆分路径,如下:

    import os

    os.path.split('/Users/pangao/test.txt')

    # ('/Users/pangao/', 'test.txt')

    os.path.splitext() 可以直接获取文件扩展名,很方便,如下:

    import os

    os.path.splitext('/Users/pangao/test.txt')

    # ('/Users/pangao/test', '.txt')

    这些合并、拆分路径的函数并不会检测目录和文件是否真实存在,他们仅仅是对字符串进行操作。

    文件重命名

    假定当前目录下有一个 test.txt 文件,如下:

    import os

    os.rename('test.txt', 'test.py') #重命名

    删除文件

    假定当前目录下有一个 test.txt 文件,如下:

    import os

    os.remove('test.txt') #删除

    复制文件

    os 模块中没有复制函数,幸运的是shutil模块提供了copyfile()的函数,你还可以在shutil模块中找到很多实用函数,它们可以看做是os模块的补充,如下:

    import shutil

    shutil.copyfile('test.txt', 'test.py')

    遍历文件夹下的文件方法1:

    使用 os.listdir 获取当前目录下的文件和文件夹,如下:

    import os

    for filename in os.listdir('./'):

    print(filename)方法2:

    使用 glob 模块,可以设置文件过滤,如下:

    import glob

    for filename in glob.glob('*.py'):

    print(filename)方法3:

    通过 os.walk ,可以访问子文件夹,如下:

    import os

    for fpathe, dirs, fs in os.walk('./'):

    for f in fs:

    print(os.path.join(fpathe, f))

    判断文件是否存在

    import os

    os.path.isfile('test.txt') # 如果不存在就返回False

    判断目录是否存在

    import os

    os.path.exists(directory) #如果目录不存在就返回False

    更多编程教学请关注公众号:潘高陪你学编程

    展开全文
  • Python 文件夹重命名的两种方法

    万次阅读 多人点赞 2019-06-16 17:18:41
    Python 文件夹批量重命名 - 方法一(os.listdir): 使用此种方法会将父文件夹下的所有文件(无论文件还是文件夹)一起重命名,再下一级的文件不受影响。 1. 加前缀/后缀 比如,我们需要在Test2文件夹下,将子...

    Python 文件夹批量重命名

    方法一(os.listdir):

    使用此种方法会将父文件夹下的所有文件(无论文件还是文件夹)一起重命名,再下一级的文件不受影响。

    1. 加前缀/后缀

    比如,我们需要在Test2文件夹下,将子文件(无论文件还是文件夹)批量加上前缀“test-”。

    在这里插入图片描述
    运行成功会有提示(我这里用的是VSCode,大家也可以用其他工具):
    在这里插入图片描述
    就可以看到子文件都已经加上前缀了:
    在这里插入图片描述
    python代码如下:

    import os,sys                       #导入模块
    def add_prefix_subfolders():        #定义函数名称
        mark = 'test-'                  #准备添加的前缀内容
        old_names = os.listdir( path )  #取路径下的文件名,生成列表
        for old_name in old_names:      #遍历列表下的文件名
            if old_name!= sys.argv[0]:     #代码本身文件路径,防止脚本文件放在path路径下时,被一起重命名
                os.rename(os.path.join(path,old_name),os.path.join(path,mark+old_name))  #子文件夹重命名
                print (old_name,"has been renamed successfully! New name is: ",mark+old_name)
    
    if __name__ == '__main__': 
            path = r'E:\我的学习\编程\Python\PythonTest2\Test2'   #运行程序前,记得修改主文件夹路径!
            add_prefix_subfolders()            #调用定义的函数
    

    加后缀一样的道理,在os.rename那里,把mark+old_name换成old_name+mark。
    自己使用时记得一要修改路径,二要修改前缀/后缀的内容。

    2. 替换重命名

    如果要把文件名从test替换为test2
    在这里插入图片描述
    运行后的结果提示:
    在这里插入图片描述子文件/文件夹就被重命名成功了
    在这里插入图片描述
    python代码如下:

    import os,sys                       #导入模块
    def rename_subfolders():        #定义函数名称
        old_names = os.listdir( path )  #取路径下的文件名,生成列表
        for old_name in old_names:      #遍历列表下的文件名
            if old_name!= sys.argv[0]:     #代码本身文件路径,防止脚本文件放在path路径下时,被一起重命名
                new_name=old_name.replace('test-','test2-')   #将原来名字里的‘test’替换为‘test2’
                os.rename(os.path.join(path,old_name),os.path.join(path,new_name))  #子文件夹重命名
                print (old_name,"has been renamed successfully! New name is: ",new_name)   #输出提示
    
    if __name__ == '__main__': 
            path = r'E:\我的学习\编程\Python\PythonTest2\Test2'   #运行程序前,记得修改主文件夹路径!
            rename_subfolders()          #调用定义的函数,注意名称与定义的函数名一致
    

    同样,记得修改路径,需要替换的内容

    方法二(os.walk):

    在os.walk的方法下,可以从父文件夹路径下,只取得子文件夹进行操作。适用于父文件夹下同时存在子文件夹和子文件,但只想对子文件夹进行重命名操作的情况。

    1. 加前缀/后缀

    比如,我们需要在Test2文件夹下,将只针对子文件夹批量加上前缀“test-”。
    在这里插入图片描述
    运行成功后有提示几个文件夹已经被重命名:

    在这里插入图片描述可以看到这里只有子文件夹被重命名了,txt文件未受影响:
    在这里插入图片描述
    python 代码如下:

    import os,sys                       #导入模块
    def add_prefix_subfolders():        #定义函数名称
        mark = 'test-'                  #准备添加的前缀内容
        for foldName, subfolders, filenames in os.walk(path):     #用os.walk方法取得path路径下的文件夹路径,子文件夹名,所有文件名
            for subfolder in subfolders:     #遍历列表下的子文件夹名
                os.rename(os.path.join(foldName,subfolder),os.path.join(path,mark+subfolder))  #子文件夹重命名
                print (subfolder,"has been renamed successfully! New name is: ",mark+subfolder)   #输出提示
    
    if __name__ == '__main__': 
            path = r'E:\我的学习\编程\Python\PythonTest2\Test2'   #运行程序前,记得修改主文件夹路径!
            add_prefix_subfolders()          #调用定义的函数,注意名称与定义的函数名一致
    

    加后缀一样的道理,在os.rename那里,把mark+old_name换成old_name+mark。
    自己使用时记得一要修改路径,二要修改前缀/后缀的内容。

    2. 替换重命名

    如果要把文件名从test替换为test2
    在这里插入图片描述运行成功会会有提示,几个子文件夹已经被重命名:
    在这里插入图片描述看到只有子文件夹被重命名成功:
    在这里插入图片描述
    python 代码如下:

    import os,sys                       #导入模块
    def rename_subfolders():        #定义函数名称
        for foldName, subfolders, filenames in os.walk(path):     #用os.walk方法取得path路径下的文件夹路径,子文件夹名,所有文件名
            for subfolder in subfolders:     #遍历列表下的子文件夹名
                new_name=subfolder.replace('test-','test2-')   #将原来名字里的‘test’替换为‘test2’
                os.rename(os.path.join(foldName,subfolder),os.path.join(path,new_name))  #子文件夹重命名
                print (subfolder,"has been renamed successfully! New name is: ",new_name)   #输出提示
    
    if __name__ == '__main__': 
            path = r'E:\我的学习\编程\Python\PythonTest2\Test2'   #运行程序前,记得修改主文件夹路径!
            rename_subfolders()          #调用定义的函数,注意名称与定义的函数名一致
    

    同样,记得修改路径,需要替换的内容

    展开全文
  • 假设目录下面有这样一系列命令杂乱的文件: OPENFOAM -TRAINING- PART- #1.pdf OPENFOAM - TRAINING- PART- #2.pdf ...现在批量将这些文件重命名,去掉#,并把序号挪到最前面。 import os os.ch...
  • Python文件进行重命名

    万次阅读 多人点赞 2019-04-15 17:12:05
    直接贴代码: import os srcFile = './actwork/linkFile/allExtLinks - 副本.txt' dstFile = './actwork/linkFile/allExtLinks - copy.txt' try: os.rename(srcFile,dstFile) except Exception as e: ...
  • This question already has an answer here: 这个问题在这里已有答案: How to rename a file using Python 10
  • python脚本用来重命名当前目录各子目录下的图像文件。 命名格式:类别名_当前时间的微秒_随机数(0~100之间)_文件后缀。 运行命令 python3 rename.py 假设/home/user/pictures/目录下有两个文件夹car和person下都...
  • python 复制 移动 重命名文件 import os import shutil # 复制文件: shutil.copyfile("oldfile", "newfile")  # oldfile和newfile都只能是文件 shutil.copy("oldfile", "newfile")  # oldfile只能是...
  • 】上节我们学习了复制文件命令,cp就是copy的简写。这节我们继续学习其他的命令。●移动文件移动文件使用命令:mv 要移动的文件 移动到哪里mv就是move的简写。我们桌面上的linux文件夹里面的game文件夹,里面只有...
  • 前言上一篇文章中,我们学习了python文件的创建、打开open、读取read和写入write命令,与文件相关的还有定位查找、重命名、删除等,这就是我们本节要一起学习的内容。python文件定位查找、重命名和删除1文件的定位...
  • $ mv -v live dead Verbose 详细 重命名命令(Rename Command) There is a command named rename which whole purpose is rename files and directories. Rename command has the following syntax. 有一个名为...
  • 将需要的文件重命名为指定格式 import os class BatchRename(): def __init__(self): self.path = 'K:/LIDC-IDIR/Feijiejie/4' # 表示需要命名处理的文件夹 def rename(self): filelist = os.listdir(self....
  • python文件进行逆序重命名

    千次阅读 2015-12-07 17:11:25
    Python批量重命名文件方法很简单我们会利用listdir与rename 再加上目录遍历即可实现文件命令了,下面整理了一些方法。  用到了os的两个接口:  1、列出文件夹中的所有文件(也包含目录)  os.listdir...
  • 文件重命名 删除文件 复制文件 获取当前工作目录 import sys print(sys.path[0]) 获取执行命令的位置 import os print(os.getcwd()) 路径拼接 由于不同的操作系统的路径分隔符不同,因此在做...
  • /usr/bin/env python # coding=utf-8 # 批量重命名图片名字从-2-01改成-1-01 import os import time class ImageRename(): def __init__(self): self.path = './' def rename(self): filelist = os....
  • #coding=utf8 ''' 该库用来管理文件。 初始化函数调用读取配置文件模块中的Config类 ...moveCSVToSave():把下载路径下的result.csv文件重命名,并把重命名后的文件移动到保存路径下 getLastFileWithPath()
  • Using shutil (shell utilities) module, file operation such as copy, rename, move, etc is very handy.... 使用shutil(shell实用程序)模块 ,文件操作(例如复制,重命名,移动等)非常方便。 要复制和重...
  • linux中文件重命名This tutorial will walk you through the simple steps to rename a file in Linux. 本教程将引导您完成在Linux中重命名文件的简单步骤。 It’s going to be a very simple and straightforward ...
  • 1、一个利用Python整理图片的例子 1.1、整理前的文件夹 1.2、需求 1、将“萨克斯”和“新建文件夹”两个文件夹里面的图片移动到“pic”目录下的图片一起; 2、移动完之后,将这两个空文件夹删除; 3、将pic文件夹...
  • ubuntu 文件重命名

    千次阅读 2016-01-18 13:52:00
    1) 去掉所有 .bak 文件的扩展名: rename 's/\.bak$//' *.bak 2) 把所有文件的后辍由rm改为rmvb: rename 's/\.rm$/\.rmvb/' *.rm 3) 把所有文件名内含有大小字母的,修改为小写字母: rena
  • 我们可以使用Python附带的shutil模块来完成。 复制文件 我们可以使用shutil.copy()来将文件从一个位置复制到另一个位置: import shutil src = 'XXX/XXX/file.txt' dst = 'XXX/XXX/XXX/dir' shutil.copy(src, dst)...
  • 工作中经常有重命名大量文件的需求,因此可以考虑用程序来一键完成。这个功能比较简单,可以多收集几种版本来测试一下~~ Python 使用os.listdir()方法返回当前目录下的所有文件名,对每一个文件名字符串用str....
  • python文件常用操作

    2017-08-29 14:40:08
    python (glob os.path)常用文件操作: python excel 操作 python批量重命名目录下(单个或者多个)文件 目录以及文件名的一些操作...像这样批量重命名文件的话在linux中有很多常用的命令具体看我的bolg直接上代码了#
  • python文件创建,删除,移动,复制,重命名

    万次阅读 多人点赞 2018-01-21 19:02:06
    os.sep 可以取代操作系统特定的路径分隔符。windows下为 '\\' os.name 字符串指示你...os.getcwd() 函数得到当前工作目录,即当前Python脚本工作的目录路径 os.getenv() 获取一个环境变量,如果没有返回none os.pute
  • 同事要把一个文件夹的所有内容复制到新的文件夹中,用Python简单实现了。 1. 先复制(shutil库) src = 原目录, dst = 新的目录,根据自己需求更改。shutil.copytree() import shutil import os #dst目录必须不...
  • shutil 模块提供了多个针对文件文件集合的高等级操作。 尤其是,文件的复制和删除操作。 对于独立文件的操作, 参考os 模块 警告: 即使是更高等级的文件复制功能 (shutil.copy(), shutil.copy2()) 也不能复制...
  • 目前一个用的比较多的功能:将多个小文件的内容合并在一个统一的文件中,对原始文件重命名标记其已被处理过。之前使用其他脚本写的,尝试用Python写了一下,顺便熟悉一下Python的文件处理命令。原始文件经过处理之后...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 29,907
精华内容 11,962
关键字:

python文件重命名命令

python 订阅