原标题:10062-更新-【支持子孙文件夹内文件操作】对指定文件夹下指定后缀文件创建同名文件夹并将同名文件移入文件夹【源代码】
导读:
该工具的主要功能是根据用户输入的文件夹路径和文件扩展名,为每个符合指定扩展名的文件在其所在目录下创建一个以文件名(不含扩展名)命名的文件夹,并将文件移动到新建的文件夹中。在操作...
该工具的主要功能是根据用户输入的文件夹路径和文件扩展名,为每个符合指定扩展名的文件在其所在目录下创建一个以文件名(不含扩展名)命名的文件夹,并将文件移动到新建的文件夹中。在操作过程中,程序会对输入路径进行有效性验证,若路径无效会提示用户重新输入。操作完成后,用户可选择是否继续运行程序,对其他文件夹和扩展名进行同样的整理操作。
用户使用该工具时,程序首先会打印作者相关信息,包括定制小工具的微信联系方式以及定制费用说明。之后,用户按以下步骤操作:
- 输入文件夹路径:在“请输入文件夹路径:”的提示后,用户需准确输入要进行文件整理操作的文件夹路径。输入后程序会去除路径两端的空白字符,并验证该路径是否存在且为一个文件夹。若路径无效,程序会提示“输入的文件夹路径无效,请重新输入!”,并要求用户再次输入。
- 输入文件扩展名:在“请输入文件扩展名(例如.jpg):”提示后,用户输入想要处理的文件扩展名,如
.jpg
、.txt
等。输入后程序同样会去除扩展名两端的空白字符。
输入完成且路径验证有效后,程序开始执行操作:
- 遍历文件夹:程序使用
Path.iterdir
方法遍历指定文件夹及其所有子文件夹中的每一个项目。 - 处理文件:
- 当遍历到的项目是文件时,程序检查文件的扩展名是否与用户输入的扩展名一致。若一致,程序使用
Path.stem
获取文件名(不包含扩展名),并在文件所在目录下创建一个以该文件名命名的新文件夹。创建文件夹后,程序在控制台打印“创建文件夹: [新文件夹路径]”的信息。 - 接着,程序构建文件在新文件夹中的路径,使用
shutil.move
将文件从原路径移动到新路径,并在控制台打印“移动文件: [原文件路径] -> [新文件路径]”的信息。
- 当遍历到的项目是文件时,程序检查文件的扩展名是否与用户输入的扩展名一致。若一致,程序使用
- 递归处理子文件夹:当遍历到的项目是文件夹时,程序会递归调用
process_files
函数,对该子文件夹及其内部的所有文件和子文件夹执行相同的整理操作。 - 操作结果反馈:当指定文件夹及其所有子文件夹中的符合扩展名的文件都处理完毕后,程序在控制台输出“操作完成”。
- 询问是否继续:完成一次文件整理操作后,程序询问“是否要继续运行程序?(y/n): ”。用户输入内容后去除两端空白字符并转换为小写,若输入为“y”,则会重新提示用户输入文件夹路径和文件扩展名,开始新一轮的文件整理操作;若输入其他内容,程序结束运行。在整个操作过程中,如果发生任何异常,程序会捕获异常并在控制台打印“发生错误: [错误信息]”。
例如,假设存在如下文件夹结构:
主文件夹
│
├── 文件夹 A
│ ├── img1.jpg
│ ├── subfolder1
│ │ ├── img2.jpg
│ │ └── text.txt
│ └── img3.jpg
└── 文件夹 B
用户运行程序,输入“主文件夹”作为文件夹路径,输入“.jpg”作为文件扩展名。程序会为“文件夹A/img1.jpg”创建“文件夹A/img1”文件夹,并将“img1.jpg”移动到该文件夹中;对“文件夹A/subfolder1/img2.jpg”创建“文件夹A/subfolder1/img2”文件夹并移动文件;对“文件夹A/img3.jpg”创建“文件夹A/img3”文件夹并移动文件。对于“text.txt”,因扩展名不符不进行处理。操作完成后输出提示信息,并询问用户是否继续运行程序。若选择“y”,可重新输入路径和扩展名进行新一轮操作;若选择其他内容,程序结束。
python版本:3.86
是否带UI界面:非UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 【00】300克铜版纸名片报价
- 705-按指定名称重命名文件夹下【图片】-序列连续-支持子文件夹穿透
- 713-批量以所在文件夹名批量按顺序重命名文件名-与系统排序相同
- 724-【只对目录下一级文件夹有效】对指定目录下各文件夹下文件以文件夹名命名-遇到多个同格式的文件只命名其中一个
- 751-以txt中内容批量搜索并删除删除指定文件夹下文件
- 766-移动带有关键字文件到指定文件夹
- 769-批量删除文件名中的指定字符串
- 773-批量为文件名添加前缀或后缀
- 778-批量删除指定文件夹下指定格式文件(包含子孙文件夹下的)
- 786-批量移动指定文件夹下文件到目标文件夹下同名文件夹内
- 1开通VIP会员享全站内容免费查看
- 2🔥🔥🔥承接各种批处理工具定制 / 售后相关信息 / 任何需求请在该文章下留言
- 3752-批量复制文件及文件夹到多个文件夹
- 410081-1-批量解压自解压文件-【支持密码-子文件穿透】【不支持嵌套自解压或压缩包解压】-除自解压文件外不能有其他exe文件
- 5790-批量统计各文件夹下文件类型数量及文件夹路径输出到excell
- 6网页插入bilibili哔哩哔哩视频
- 7401-批量识别pdf中二维码并替换为指定图片或覆盖白色
- 8431-批量合并指定文件夹下各文件夹内pdf为一个pdf文件
- 9Adobe程序完全卸载教程完全卸载无残留-【包括单个程序卸载和全部程序卸载】(win系统版本)
- 10为ps脚本添加快捷键快速调用
还没有评论,来说两句吧...