批量化修改文件名及后缀

python小脚本文件,可自主输入某一文件夹,从而修改该文件夹下的文件名和后缀。

修改文件名:人工输入文件名文字部分,批量化由递增数字组成

修改后缀名:人工输入文件后缀,批量化全处理。

代码如下:

# -*- coding: utf-8 -*-
"""
@author: yinggang zhang
change the the file name in a dictionary
"""
import os

def changelastname(all_list_in_adir,readdir):
    ‘‘‘change the last name in a dictionary‘‘‘
    os.chdir(readdir)
    newlast = input(‘what last name you want ?‘)
    for subfile in all_list_in_adir:
        remain = subfile.split(‘.‘)[0]
        os.renames(subfile,remain+‘.‘+newlast)

def changename(all_list_in_adir,readdir):
    ‘‘‘change the file name in a dictionary‘‘‘
    os.chdir(readdir)
    newname_number = 1
    nameword = input(‘please input the name,computer will do the number after the word!‘)
    for subfile in all_list_in_adir:
        newname = str(nameword)+‘%d‘ % newname_number
        remain = subfile.split(‘.‘)[1]
        os.renames(subfile, newname + ‘.‘ + remain)
        newname_number += 1

dictionary_place = str(input(‘copy the dictionary path and paste here‘))
all_list = os.listdir(dictionary_place)
print(all_list)
userchoice = int(input(‘you want to change the file name(1) or the last name(2),type the number 1 or 2:‘))
if userchoice == 1:
    print(‘you are changing the file name!‘)
    changename(all_list,dictionary_place)
if userchoice == 2:
    print(‘you are changing the last name!‘)
    changelastname(all_list,dictionary_place)

新手一枚,并没有处理exception,但基本功能已经做出。希望大家可以批评指正!

可交流python学习心得和经验,以及代码的交流。嘿嘿。

时间: 2024-10-18 17:06:49

批量化修改文件名及后缀的相关文章

批量修改文件名 文件后缀

文件夹中新建文本,输入代码,更改文本后缀为.bat 要更改的文件与文本放在同一文件夹 双击运行 1.批量删除文件后缀名 ren *.png* *.png 去掉“.下载” 运行后 2.批量删除文件重复后缀名 ren *.png *. 运行后 3.批量删除文件名前n个字符 @echo offsetlocal enabledelayedexpansion ::批量去掉文件名前N个字符,如果有文件夹会搜索文件夹下的每个文件进行修改set /p format=What suffix filename to

关于linux系统下批量修改文件名和后缀

总会遇到遇到处理文件的问题,比如文件后缀修改,以前都是写shell,后来发现有个更简单的方法 rename 1,在centos 下是用c 写的 rename 用法: a.txt  修改为 a.cc rename txt  cc *.txt                  renme  [原字符串]  [要修改成的字符串]   [匹配文件] 有时候会遇到按序号段来修改的 a001.txt  修改为a0099.txt rename a00 a000 a00??        rename  [原字

批量修改文件名后缀

find . -name "*.cpp"|sed -e 's/\(.*\).cpp$/mv & \1.mm/e' 批量修改文件名后缀

python批量修改文件名后缀名

#coding:utf-8import os # 列出当前目录的所有文件files = os.listdir('.')for filename in files: # 分割文件名和后缀名 portion = os.path.splitext(filename) # 比较后缀名 if portion[1] == ".mp3": # 修改后缀名 newname = portion[0] + ".m4a" os.rename(filename, newname) # 打印

flume修改源码实现source文件名前后缀的更改

业务场景: 需求:通过flume进行数据采集,将本地(windows服务器)不断产生的csv文件采集到hdfs上. 问题:本地文件在生成的过程中,会出现文件名重复的现象.也就是说,在前一秒生成文件名为aaa.csv,该文件经过flume进行处理之后会进行文件名的更改,默认情况下文件名会更改为aaa.csv.COMPLATED,但是在第二秒的时候,接着又生成了aaa.csv文件,此时flume将该文件处理完进行更名的过程中,就会报错,例如: 解决:为了避免文件名重复导致flume程序挂的问题,此时

shell 脚本 批量修改文件名

修改文件名前 #!/bin/bask # for a in $( ls /etc/yum.repos.d/CentOS* );do if [ $a != '/etc/yum.repos.d/CentOS-Media.repo' ];then #CentOS-Media.repo的文件名不修改 mv $a $a.bak #给文件加上后缀 .bak fi done 测试: 删除文件后缀 .bak#!/bin/bask # for a in $( ls /etc/yum.repos.d/Cent* )

Python 批量修改文件名

最近下载了几部美剧(越狱.迷失.权利的游戏......),每集文件名都好长好长..想改短一些,但一个一个改太累了,于是写了个脚本来实现批量修改: 修改前文件名: 修改后文件名: 代码实现: #encoding=utf-8 import os def rename(path,newname): # 获取path目录下的所有文件名和目录名 filenames = os.listdir(path)for filename in filenames: # 判断是文件还是目录 if os.path.isd

Linux下批量修改文件名(rename)

原文地址: http://blog.csdn.net/sea_shore/article/details/6102437 1.rename命令批量修改文件名, 其实linux下可以使用别的办法来批量修改文件名, 不过rename实在太方便了 比如把所有的表为cdb1_* 修改为cdb_*的在本目录下只需要# rename 'cdb1' 'cdb' * 以前都是写个for循环来做...想想多傻啊, 呵呵 rename还有更多的功能, 建议man rename下 From:http://www.ha

VBS自编写脚本。(实现批量修改文件名且在执行前,备份原有文件夹中的文件)

'=========================================================================='' VBScript Source File -- Created with SAPIEN Technologies PrimalScript 4.0'' NAME: '' AUTHOR: Microsoft , Microsoft' DATE : 2014/7/9'' COMMENT: '批量修改文件夹下对应的所有文件名''==========