该工具根据位于程序可执行文件所在文件夹中的 floder.txt 文件内的文件夹名称列表,在用户指定的源文件夹及其所有子文件夹中查找相应的文件夹,并将其移动或复制到用户指定的目标文件夹中。操作完成后,工具会列出所有在 floder.txt 中的文件夹名,以及其中未成功移动或复制的文件夹名。用户可以选择是否继续对其他源文件夹和目标文件夹执行相同操作。
用户使用该工具时,程序首先会打印作者相关信息,包括定制小工具的微信联系方式以及定制费用说明。之后,用户按以下步骤操作:
- 输入源文件夹路径:在“请输入需要处理的源文件夹的路径: ”提示后,用户需准确输入包含待查找和移动或复制文件夹的源文件夹路径。
- 输入目标文件夹路径:在“请输入需要将搜索到的文件夹移动或复制到的目标文件夹的路径: ”提示后,用户输入用于存放移动或复制后文件夹的目标文件夹路径。
- 选择操作类型:在“请输入操作类型 (输入'move' 或 输入'copy'): ”提示后,用户输入“move”选择移动操作,输入“copy”选择复制操作。若输入其他内容,程序会提示“Invalid operation. 请选择 'move' or 'copy'.”并结束本次操作。
- 执行移动或复制操作:
- 读取文件夹列表:程序获取当前运行的可执行文件路径,确定程序所在文件夹,并构建
floder.txt文件的路径。然后读取floder.txt文件内容,将每一行内容去除两端空白字符并使用unquote函数解码(假设内容可能是经过URL编码的),得到需要查找的文件夹名称列表。 - 遍历源文件夹并操作:使用
os.walk函数遍历源文件夹及其所有子文件夹。对于每个子文件夹,检查其名称是否在从floder.txt读取的文件夹名称列表中。若存在,则根据用户选择的操作类型,使用shutil.move进行移动操作或shutil.copytree进行复制操作,将该子文件夹移动或复制到目标文件夹中。操作成功会在控制台打印“Moved '[文件夹名]' from [源路径] to [目标路径]”或“Copied '[文件夹名]' from [源路径] to [目标路径]”;若操作出错,会打印“Error [操作类型]ing '[文件夹名]': [错误信息]”。程序会记录成功移动或复制的文件夹名。 - 操作结果反馈:操作完成后,程序会列出所有在
floder.txt中的文件夹名,然后列出其中未成功移动或复制的文件夹名。
- 读取文件夹列表:程序获取当前运行的可执行文件路径,确定程序所在文件夹,并构建
- 询问是否继续:完成一次移动或复制操作后,程序询问“是否要继续运行程序?(y/n): ”。若用户输入“y”(不区分大小写),则会重新提示用户输入源文件夹路径、目标文件夹路径和操作类型,开始新一轮的操作;若输入其他内容,程序结束运行。
例如,假设存在如下文件夹结构:
源文件夹
│
├── 文件夹 A
│ ├── subfolder1
│ └── subfolder2
├── 文件夹 B
│ ├── subfolder3
│ └── subfolder4
└── 文件夹 C
目标文件夹
程序所在文件夹
│
├── floder.txt(内容为 “subfolder1\nsubfolder3\nsubfolder5”)
用户运行程序,输入“源文件夹”作为源文件夹路径,“目标文件夹”作为目标文件夹路径,输入“move”作为操作类型。程序会在源文件夹及其子文件夹中查找 floder.txt 中列出的文件夹,将“源文件夹/文件夹A/subfolder1”移动到“目标文件夹/subfolder1”,将“源文件夹/文件夹B/subfolder3”移动到“目标文件夹/subfolder3”,并在控制台打印相应操作信息。操作完成后,程序列出所有文件夹名“subfolder1”“subfolder3”“subfolder5”,并指出“subfolder5”没有被移动。然后询问用户是否继续运行程序。若选择“y”,可重新输入路径和操作类型进行新一轮操作;若选择其他内容,程序结束。
python版本:3.86
是否带UI界面:非UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 701-以文件名创建文件夹排除(1)序列将同名文件移入(支持穿透子孙文件夹)
- 719-批量将文件名重命名为所在文件夹的名字
- 722-批量获取指定文件夹下所有文件名或文件夹名或完整路径并写入txt
- 723-批量将两个文件夹分别或同时按顺序-随机规则-移动或复制文件或文件夹到目标文件夹下各一级文件夹内
- 773-批量为文件名添加前缀或后缀
- 778-批量删除指定文件夹下指定格式文件(包含子孙文件夹下的)
- 785-批量重命指定文件夹内所有文件-指定名称+数字序列…形式
- win系统可以安全删除的文件夹-以清理释放系统空间
- 10080-3-持续监测指定文件夹并解压zip-rar-7z压缩包-【支持子孙文件夹-多层嵌套压缩包】-【不支持密码解压-分卷类型解压】
- 【下单入口】300克铜版纸名片印刷【工厂价】




还没有评论,来说两句吧...