- N +

10094-源文件夹内视频指定数量复制或移动到目标文件夹并为视频文件创建同名文件夹移入-txt文本合并后将合并的复制或移动到目标文件夹【源代码】

10094-源文件夹内视频指定数量复制或移动到目标文件夹并为视频文件创建同名文件夹移入-txt文本合并后将合并的复制或移动到目标文件夹【源代码】原标题:10094-源文件夹内视频指定数量复制或移动到目标文件夹并为视频文件创建同名文件夹移入-txt文本合并后将合并的复制或移动到目标文件夹【源代码】

导读:

它具备两个主要功能:一是将源文件夹中的视频文件按序复制或移动到多个目标文件夹中,并为每个视频文件创建同名文件夹后移入;二是将指定文件夹中的txt文件按设定数量合并,然后将合并后...

它具备两个主要功能:一是将源文件夹中的视频文件按序复制或移动到多个目标文件夹中,并为每个视频文件创建同名文件夹后移入;二是将指定文件夹中的txt文件按设定数量合并,然后将合并后的txt文件复制或移动到目标文件夹中。用户在每个步骤按回车键确认后执行下一步操作,完成所有操作后可选择是否继续运行程序进行新的文件处理任务。

用户使用该工具时,程序首先会打印作者相关信息,包括定制小工具的微信联系方式、定制费用说明以及操作提示(每个步骤结束后按回车键确认执行下一步)。之后,用户按以下步骤操作:

  1. 输入视频源文件夹路径和操作类型:在“请输入视频源文件所在文件夹总路径:”提示后,准确输入包含视频文件的源文件夹路径。接着,在“请选择操作类型(复制/移动)建议输入复制:”提示后,输入“复制”或“移动”,以确定对视频文件的操作方式。
  2. 读取目标文件夹路径:程序会从 usb_folders.txt 文件(以UTF - 8编码读取)中读取目标文件夹路径,用户无需手动输入目标文件夹路径,但需确保 usb_folders.txt 文件存在且路径格式正确,每个路径独占一行。
  3. 输入视频处理数量:在“请输入要复制或移动到每个手机的视频数量,输入数字:”提示后,输入一个整数,表示要将多少个视频文件复制或移动到每个目标文件夹中。
  4. 输入txt文件夹路径:在“请输入包含txt文件的文件夹总路径:”提示后,输入包含需要合并的txt文件的文件夹路径。
  5. 输入txt文件合并数量:在“请输入每几个txt文件合并为一个的数量,输入数字:”提示后,输入一个整数 n,表示每 n 个txt文件合并为一个新的txt文件。
  6. 输入txt操作类型:在“请选择txt操作类型(复制/移动)建议输入移动:”提示后,输入“复制”或“移动”,确定对合并后的txt文件的操作方式。
  7. 输入txt处理数量:在“请输入每个文件夹放几个合并后的txt文件,输入数字:”提示后,输入一个整数,表示每个目标文件夹中放置合并后的txt文件的数量。

输入完成后,程序开始执行操作:

视频文件处理

  • 排序视频文件:程序使用 natural_sort_key 函数(通过正则表达式将文件名按数字和字符分开,并将数字部分转换为整数进行排序)对源文件夹内所有 .mp4 视频文件进行排序。
  • 处理目标文件夹:对于每个目标文件夹,程序检查其中已有的视频文件数量。若数量已达到或超过 num_videos_to_process,则跳过该目标文件夹。否则,计算需要从源文件夹复制或移动到该目标文件夹的视频文件数量,并从排序后的源视频文件列表中取出相应数量的文件进行操作。
  • 复制或移动视频并创建文件夹:根据用户选择的操作类型(复制或移动),使用 shutil.copy2shutil.move 函数将视频文件复制或移动到目标文件夹。然后为每个视频文件创建同名文件夹,并将视频文件移入该文件夹中,同时在控制台打印操作信息。

txt文件处理

  • 排序txt文件:程序使用 natural_sort_key 函数对指定txt文件夹内所有 .txt 文件进行排序。
  • 合并txt文件:按顺序读取txt文件内容,将文件名(不带后缀)和文件内容以 / 分隔连接起来,每 n 个文件内容合并为一个新的txt文件,并在文件末尾添加换行符(除了最后一个合并文件)。合并后的新文件命名为 config_1.txtconfig_2.txt 等,并保存到原txt文件夹中。
  • 移除换行符:程序会移除每个合并后的txt文件最后一行的换行符。
  • 复制或移动合并后的txt文件:根据用户选择的操作类型(复制或移动),将合并后的txt文件按顺序复制或移动到目标文件夹中,每个目标文件夹放置 num_txt_to_process 个合并后的txt文件,并在控制台打印操作信息。

询问是否继续:完成视频和txt文件的处理操作后,程序询问“是否要继续运行程序?可不退出程序继续执行其他操作(y/n): ”。若用户输入“y”(不区分大小写),则会重新提示用户输入各项参数,开始新一轮的文件处理操作;若输入其他内容,程序结束运行。

例如,假设存在如下文件夹结构: 

视频源文件夹
│
├── video1.mp4
│
├── video2.mp4
│
├── video3.mp4
│
├── video4.mp4


txt 文件夹
│
├── text1.txt
│
├── text2.txt
│
├── text3.txt
│
├── text4.txt

用户运行程序,输入“视频源文件夹”作为视频源文件夹路径,输入“复制”作为操作类型,输入“2”作为要复制到每个手机的视频数量,输入“txt文件夹”作为包含txt文件的文件夹路径,输入“2”作为每几个txt文件合并为一个的数量,输入“移动”作为txt操作类型,输入“1”作为每个文件夹放几个合并后的txt文件的数量。程序会将“video1.mp4”和“video2.mp4”复制到“目标文件夹1”,并为它们分别创建同名文件夹后移入;将“video3.mp4”和“video4.mp4”复制到“目标文件夹2”,同样创建同名文件夹后移入。同时,将“text1.txt”和“text2.txt”合并为“config_1.txt”,“text3.txt”和“text4.txt”合并为“config_2.txt”,移除每个合并文件最后一行换行符后,将“config_1.txt”移动到“目标文件夹1”,“config_2.txt”移动到“目标文件夹2”。操作完成后输出提示信息,并询问用户是否继续运行程序。若选择“y”,可重新输入参数进行新一轮操作;若选择其他内容,程序结束。


python版本:3.86

是否带UI界面:非UI版本

电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)

脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮

重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能


查看源代码

隐藏内容,开通会员可免费查看!
售价:50 
月度会员 免费查看
开通会员
开通月度会员或更高级的会员可免费查看该内容

登录注册购买      开通会员免费查看

  • 随机文章
  • 热门文章

收藏本文章

作者:softbangong
使用批处理解放双手,使用softbangong一直赢。 学无止境,精准有效方为上上策。 softbangong你的贴身助手!
返回列表
上一篇:
下一篇:
您需要 登录账户 后才能发表评论

发表评论取消回复中国互联网举报中心

快捷回复:

验证码

    评论列表 (暂无评论,共7人参与)参与讨论

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