CN116662271A - 一种扫描文件可交互式批量重命名方法 - Google Patents

一种扫描文件可交互式批量重命名方法 Download PDF

Info

Publication number
CN116662271A
CN116662271A CN202310192308.XA CN202310192308A CN116662271A CN 116662271 A CN116662271 A CN 116662271A CN 202310192308 A CN202310192308 A CN 202310192308A CN 116662271 A CN116662271 A CN 116662271A
Authority
CN
China
Prior art keywords
file
list
renaming
file name
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310192308.XA
Other languages
English (en)
Inventor
曹迎
陈雨
丁建平
王宇皓
胡建
卢修元
李彦儒
梁心蓝
袁一博
郝丽萍
张恒海
周霖
喻浩东
王艺蓉
王新平
谭燕平
徐翌尧
徐熙然
赵思越
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Agricultural University
Original Assignee
Sichuan Agricultural University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan Agricultural University filed Critical Sichuan Agricultural University
Priority to CN202310192308.XA priority Critical patent/CN116662271A/zh
Publication of CN116662271A publication Critical patent/CN116662271A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开本一种扫描文件可交互式批量重命名方法,涉及自动化办公技术领域。本发明描文件可交互式批量重命名方法,包括导入os及re模块、构建重命名参考列表、获取目标文件名列表;其中,构建重命名参考列表包括输入参考文件名列表、参考文件名列表排序、去除文件名的后缀;其中,获取目标文件名列表包括获取目标文件路径及排序处理、重命名文件后缀设置、最终重命名文件列表完成。通过调用os系统文件处理模块,基于文件关键数字序号设计需要的正则表达式,以可调整、可交互式python脚本实现对扫描文件的批量重命名处理,规避了手动一对一文件重命名的局限,使对大批量扫描文件的重命名更加便利,实现自动化高效办公。

Description

一种扫描文件可交互式批量重命名方法
技术领域
本发明涉及自动化办公技术领域,具体涉及一种扫描文件可交互式批量重命名方法。
背景技术
目前,对于扫描文件的批量重命名,通常采用手动一对一重命名,即拷贝原文件名称,再对扫描文件进行鼠标右键点击的方式进行文件的重命名,需要对每一个扫描文件进行以上重复工作,过程繁琐、极其耗时。
发明内容
本发明的目的在于,提供一种扫描文件可交互式批量重命名方法,通过调用os系统文件处理模块,基于文件关键数字序号设计需要的正则表达式,以可调整、可交互式python脚本实现对扫描文件的批量重命名处理,规避了手动一对一文件重命名的局限,使对大批量扫描文件的重命名更加便利,实现自动化高效办公。
为实现上述技术目的,达到上述技术效果,本发明是通过以下技术方案实现:
一种扫描文件可交互式批量重命名方法,包括:导入os及re模块、构建重命名参考列表、获取目标文件名列表;
其中,构建重命名参考列表包括输入参考文件名列表、参考文件名列表排序、去除文件名的后缀;
其中,获取目标文件名列表包括获取目标文件路径及排序处理、重命名文件后缀设置、最终重命名文件列表完成。
进一步的,所述导入os及re模块中,os模块提供非常丰富的方法用来处理文件和目录;
re模块提供了即根据一个模式字符串和可选的标志参数生成一个正则表达式对象,该对象拥有一系列方法用于正则表达式匹配和替换。
进一步的,所述输入参考文件名列表通过print()函数于python shell提示首步需要输入参考文件列表需要输入的路径,通过str(input())函数返回输入路径的字符串于变量ref_path中,同时举例了输入路径的格式;通过os.listdir()函数获取路径中所有文件的文件名并形成列表储存于对象ref_list中。
进一步的,所述参考文件名列表排序通过re.findall()函数检索符合设定正则表达式的数字位,通过.sort()函数将原始无序的ref_list列表按照设定的正则表达式规则key进行排序。
进一步的,所述去除文件名的后缀通过re.split()以“.”分隔文件名中的字符串并选取0号位([0])的数据即“.”前面的字符串,目的是去除文件名的后缀“.doc”,并通过for循环遍历处理每一个文件名,并通过.append()函数存放在创建好的空列表replace_list中。
通过建立的正则表达式规则再次处理去除文件名后缀的新列表,并通过print()函数回显到pythonshell检查排序是否正确。
进一步的,所述获取目标文件路径及排序处理:
变量tar_order需设置为“0”,re.findall()会匹配检索到的第一个数字从而忽略其他字符串。
进一步的,所述重命名文件后缀设置通过input()函数输入目标文件所需的后缀(本例子中为pdf),通过os模块中的path.join函数获取文件的绝对路径,
由于是重命名,发上替换的两个文件对象为相同的上级目录tar_path,基于文件名通过for循环(i+=1实现文件序号的迭代)获得每一个原文件及拟替换文件名的绝对路径,并通过os.rename()函数对标参考文件与目标文件,逐一实现文件重命名,并打印“rename_file_success”于shell对成功的文件给予反馈。Try:...exceptException结构用于代码执行过程中的异常情况,如某一文件重命名失败则提示具体报错信息,而不影响后续代码的逻辑运行。
进一步的,最终重命名文件列表完成利用正则表达式进行排序的处理,并打印展示结果。
本发明的有益效果:
本发明公开的一种扫描文件可交互式批量重命名方法,通过调用os系统文件处理模块,基于文件关键数字序号设计需要的正则表达式,以可调整、可交互式python脚本实现对扫描文件的批量重命名处理,规避了手动一对一文件重命名的局限,使对大批量扫描文件的重命名更加便利,实现自动化高效办公。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
图1为本发明实施例所述于pythonshell中交互式输入需要参考文件列表的绝对路径;
图2为本发明实施例所述参考文件列表在文件夹:(a)和python shell(b)中呈现的排序;
图3为本发明实施例所述终端中文件序号排列方式;
图4为本发明实施例所述设置匹配正则表达式的数字位置;
图5为本发明实施例所述处理后的参考文件名列表;
图6为本发明实施例所述文件夹中扫描文件列表及排序;
图7为本发明实施例所述重命名结果展示shell中反馈的结果;
图8为本发明实施例所述文件夹中的pdf文件被成功重命名;
具体实施方式
为了更清楚地说明本发明实施例的技术方案,下面将结合附图对实施例对本发明进行详细说明。
实施例
1脚本主体解释
1.1模块导入
本实施例中,本脚本中导入了os及re模块,os模块是python脚本中整理文件和目录最为常用的模块,该模块提供了非常丰富的方法用来处理文件和目录。re模块使python语言拥有全部的正则表达式功能,re模块提供了即根据一个模式字符串和可选的标志参数生成一个正则表达式对象,该对象拥有一系列方法用于正则表达式匹配和替换。
1.2构建重命名参考列表
1.2.1输入参考文件名列表
通过print()函数于pythonshell提示首步需要输入参考文件列表需要输入的路径,通过str(input())函数返回输入路径的字符串于变量ref_path中,同时举例了输入路径的格式,如c:/users/admin/desktop/(图1);通过os.listdir()函数获取路径中所有文件的文件名并形成列表储存于对象ref_list中。
1.2.2参考文件名列表排序
如图2所示,在系统文件夹中,文件有规律的按照数字从1到高进行排序(图2a),然而python中通过os.listdir()函数所获取的列表却未按数字大小进行排序(图2b)。
通过re.findall()函数检索符合设定正则表达式的数字位,在本脚本中检索匹配的正则表达式为“\d+”(表示1位和多位数),该匹配方式还可避免类似终端中(图3)1、10、100、2、3、30的类似排序(数字不为数值而是文本格式所导致)。变量ref_order为上一行代码“ref_order=int(input('num_position_to_take_into_account:\n'))”中输入的数字(图4),用于定位匹配表达式的数字位置,如“【附件5】”中的“5”为0号位,“序号1”中的“1”则为1号位lambda为匿名函数,用来定义简单的函数x,并将函数得到的结果返回给变量key。通过.sort()函数将原始无序的ref_list列表按照设定的正则表达式规则key进行排序。
1.2.3去除文件名的后缀
通过re.split()以“.”分隔文件名中的字符串并选取0号位([0])的数据即“.”前面的字符串,目的是去除文件名的后缀“.doc”,并通过for循环遍历处理每一个文件名,并通过.append()函数存放在创建好的空列表replace_list中。
通过1.2.2中建立的正则表达式规则再次处理去除文件名后缀的新列表,并通过print()函数回显到pythonshell检查排序是否正确(图5)。
1.3获取目标文件名列表
1.3.1获取目标文件路径及排序处理
按照1.2中的方法进行,尽管扫描文件中存在“()”,但并不影响排序(图6)。此次变量tar_order需设置为“0”,re.findall()会匹配检索到的第一个数字从而忽略其他字符串。
1.3.2重命名文件后缀设置
通过input()函数输入目标文件所需的后缀(本例子中为pdf),通过os模块中的path.join函数获取文件的绝对路径,由于是重命名,发上替换的两个文件对象为相同的上级目录tar_path,基于文件名通过for循环(i+=1实现文件序号的迭代)获得每一个原文件及拟替换文件名的绝对路径,并通过os.rename()函数对标参考文件与目标文件,逐一实现文件重命名,并打印“rename_file_success”于shell对成功的文件给予反馈。Try:...exceptException结构用于代码执行过程中的异常情况,如某一文件重命名失败则提示具体报错信息,而不影响后续代码的逻辑运行。
1.3.3最终重命名文件列表展示
同样按照1.2中的方法利用正则表达式进行排序的处理,并打印展示结果(图7),图8为文件夹中完成重命名的文件。
本实施例的一种扫描文件可交互式批量重命名方法,通过调用os系统文件处理模块,基于文件关键数字序号设计需要的正则表达式,以可调整、可交互式python脚本实现对扫描文件的批量重命名处理,规避了手动一对一文件重命名的局限,使对大批量扫描文件的重命名更加便利,实现自动化高效办公。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

Claims (8)

1.一种扫描文件可交互式批量重命名方法,其特征在于,包括:导入os及re模块、构建重命名参考列表、获取目标文件名列表;
其中,构建重命名参考列表包括输入参考文件名列表、参考文件名列表排序、去除文件名的后缀;
其中,获取目标文件名列表包括获取目标文件路径及排序处理、重命名文件后缀设置、最终重命名文件列表完成。
2.如权利要求1所述的扫描文件可交互式批量重命名方法,其特征在于,所述导入os及re模块中,os模块提供非常丰富的方法用来处理文件和目录;
re模块提供了即根据一个模式字符串和可选的标志参数生成一个正则表达式对象,该对象拥有一系列方法用于正则表达式匹配和替换。
3.如权利要求1所述的扫描文件可交互式批量重命名方法,其特征在于:所述构建重命名参考列表中:
输入参考文件名列表通过print()函数于pythonshell提示首步需要输入参考文件列表需要输入的路径,通过str(input())函数返回输入路径的字符串于变量ref_path中,同时举例了输入路径的格式;通过os.listdir()函数获取路径中所有文件的文件名并形成列表储存于对象ref_list中。
4.如权利要求3所述的扫描文件可交互式批量重命名方法,其特征在于:所述构建重命名参考列表中:
所述参考文件名列表排序通过re.findall()函数检索符合设定正则表达式的数字位,通过.sort()函数将原始无序的ref_list列表按照设定的正则表达式规则key进行排序。
5.如权利要求4所述的扫描文件可交互式批量重命名方法,其特征在于:所述构建重命名参考列表中:
所述去除文件名的后缀通过re.split()以“.”分隔文件名中的字符串并选取0号位([0])的数据即“.”前面的字符串,目的是去除文件名的后缀“.doc”,并通过for循环遍历处理每一个文件名,并通过.append()函数存放在创建好的空列表replace_list中。
通过建立的正则表达式规则再次处理去除文件名后缀的新列表,并通过print()函数回显到pythonshell检查排序是否正确。
6.如权利要求1所述的扫描文件可交互式批量重命名方法,其特征在于:获取目标文件名列表中:
所述获取目标文件路径及排序处理:
变量tar_order需设置为“0”,re.findall()会匹配检索到的第一个数字从而忽略其他字符串。
7.如权利要求1所述的扫描文件可交互式批量重命名方法,其特征在于:获取目标文件名列表中:
所述重命名文件后缀设置通过input()函数输入目标文件所需的后缀,通过os模块中的path.join函数获取文件的绝对路径;
由于是重命名,发上替换的两个文件对象为相同的上级目录tar_path,基于文件名通过for循环获得每一个原文件及拟替换文件名的绝对路径,并通过os.rename()函数对标参考文件与目标文件,逐一实现文件重命名,并打印“rename_file_success”于shell对成功的文件给予反馈。
8.如权利要求1所述的扫描文件可交互式批量重命名方法,其特征在于:最终重命名文件列表完成利用正则表达式进行排序的处理,并打印展示结果。
CN202310192308.XA 2023-03-02 2023-03-02 一种扫描文件可交互式批量重命名方法 Pending CN116662271A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310192308.XA CN116662271A (zh) 2023-03-02 2023-03-02 一种扫描文件可交互式批量重命名方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310192308.XA CN116662271A (zh) 2023-03-02 2023-03-02 一种扫描文件可交互式批量重命名方法

Publications (1)

Publication Number Publication Date
CN116662271A true CN116662271A (zh) 2023-08-29

Family

ID=87719541

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310192308.XA Pending CN116662271A (zh) 2023-03-02 2023-03-02 一种扫描文件可交互式批量重命名方法

Country Status (1)

Country Link
CN (1) CN116662271A (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858491A (zh) * 2020-07-22 2020-10-30 广州兆和电力技术有限公司 一种专利pdf文档批量重命名的方法及系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858491A (zh) * 2020-07-22 2020-10-30 广州兆和电力技术有限公司 一种专利pdf文档批量重命名的方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BILLIE使劲学: "使用python批量修改文件名", Retrieved from the Internet <URL:https://blog.csdn.net/m0_45447650/article/details/126859424> *
G舜: "利用python对批量修改文件名", Retrieved from the Internet <URL:https://blog.csdn.net/weixin_63120765/article/details/124440222> *
谭小兰;姚杨鑫;李娜;: "林业制图中利用Python语言实现批量修改文本要素", 四川林勘设计, no. 04, 15 December 2019 (2019-12-15) *

Similar Documents

Publication Publication Date Title
RU2383923C2 (ru) Проектирование функций электронных таблиц для работы с таблицами данных
US6249784B1 (en) System and method for searching and processing databases comprising named annotated text strings
KR100627195B1 (ko) 광학문자인식으로 생성된 전자문서 검색방법 및 그 시스템
CN110109681B (zh) 不同平台间代码的转换方法及系统
CN1784653A (zh) 用于从搜索查询中产生概念单元的系统和方法
JPH0997287A (ja) 問題解決支援システムおよび問題解決支援方法
CN112364024A (zh) 一种表数据批量自动比对的控制方法及装置
US20120221934A1 (en) Form bundling
CN115562642A (zh) 基于数据库和Mustache模板引擎的生成代码方法
JPH09245043A (ja) 情報検索装置
CN114527991A (zh) 代码的扫描方法、装置、设备、存储介质及程序产品
CN116662271A (zh) 一种扫描文件可交互式批量重命名方法
CN111581162A (zh) 一种基于本体的海量文献数据的聚类方法
CN111460000A (zh) 一种基于关系型数据库的回溯数据查询方法及系统
CN116226108A (zh) 可实现不同治理程度的数据治理方法及系统
Carretta et al. NGC 6388 reloaded: some like it hot, but not too much. New constraints on the first-generation polluters
CN112016328B (zh) 基于文本特征的学术机构名称实体对齐方法
JP2016057722A (ja) Dml検索装置
CN115168661B (zh) 原生图数据处理方法、装置、设备及存储介质
Sojka et al. From Pixels and Minds to the Mathematical Knowledge in a Digital Library
KR100366938B1 (ko) 컨텐츠 제작 시스템
Kalkhanda Learning AWK Programming: A fast, and simple cutting-edge utility for text-processing on the Unix-like environment
CN116541382B (zh) 基于数据安全识别级别的数据治理方法及系统
US8849866B2 (en) Method and computer program product for creating ordered data structure
Putz et al. FRBR—The MAB2 Perspective

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination