邬归 2023-10-03 15:17 采纳率: 0%
浏览 5
已结题

请问怎么批处理提取相似名字文件到自动生成的相似名字的新文件夹里

如图所示,怎么像下图这样自动提取有相关名字的文件,并各自放入自动生成的相关文件名的文件夹里面

img

img

img

img

  • 写回答

1条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-10-03 15:24
    关注

    引自强大而免费的微信小程序:皆我百晓生。如有帮助,还望采纳。


    假设我一个文件夹A下有很多的文件,然后在另一个文件夹B下有几个子文件夹,我想通过批处理将那些文件按照文件名,通过正则匹配对应到B下的子文件夹的名字,并将存在这种关系的文件自动放到对应的子文件夹下:


    使用批处理脚本来实现这个功能。下面是一个示例的批处理脚本,可以根据文件名的相似性将文件移动到对应的子文件夹中:

    @echo off
    setlocal enabledelayedexpansion
    
    set "source_folder=A"
    set "target_folder=B"
    
    for /r "%source_folder%" %%F in (*) do (
        set "filename=%%~nF"
        for /d %%D in ("%target_folder%\*") do (
            set "dirname=%%~nxD"
            REM 使用正则匹配判断文件名是否相似
            echo !filename! | findstr /r /c:"!dirname!" > nul
            if not errorlevel 1 (
                REM 如果文件名相似,则移动文件到对应的子文件夹中
                move "%%F" "%%D"
                echo "Moved file %%F to folder %%D"
            )
        )
    )
    
    echo "File organization completed!"
    

    请将脚本中的 source_folder 设置为包含要分类的文件的文件夹路径,将 target_folder 设置为要将文件移动到的包含子文件夹的目标文件夹路径。

    脚本首先遍历源文件夹中的所有文件,然后对于每个文件,它会在目标文件夹中的子文件夹中查找与文件名相似的文件夹。如果找到了相似的文件夹,则将文件移动到该文件夹中。你可以根据自己的需求来修改相似性的判断方法,例如使用正则表达式或其他字符串匹配算法。

    请注意,这只是一个示例脚本,可能需要根据你的具体情况进行修改。在运行脚本之前,请确保备份了源文件夹中的文件,以避免意外数据丢失。

    建议你先在测试环境中运行脚本,检查结果是否符合预期,然后再在实际环境中使用。对于任何操作文件的脚本,都要谨慎操作,以免造成不可逆的损坏。

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月3日
  • 赞助了问题酬金300元 10月3日
  • 创建了问题 10月3日

悬赏问题

  • ¥15 陆空双模式无人机怎么做
  • ¥15 想咨询点问题,与算法转换,负荷预测,数字孪生有关
  • ¥15 C#中的编译平台的区别影响
  • ¥15 软件供应链安全是跟可靠性有关还是跟安全性有关?
  • ¥15 电脑蓝屏logfilessrtsrttrail问题
  • ¥20 关于wordpress建站遇到的问题!(语言-php)(相关搜索:云服务器)
  • ¥15 【求职】怎么找到一个周围人素质都很高不会欺负他人,并且未来月薪能够达到一万以上(技术岗)的工作?希望可以收到写有具体,可靠,已经实践过了的路径的回答?
  • ¥15 Java+vue部署版本反编译
  • ¥100 对反编译和ai熟悉的开发者。
  • ¥15 带序列特征的多输出预测模型