如何快速将某一文件夹内含有某字符的文件复制到另一文件夹中含有某字符的子文件夹?
现新收集了一批新证书,统一放至一个文件夹中。证书格式为jpg、png、pdf等格式,证书名称格式为“姓名+证书名”,如“张三高级工程师”、“李四造价工程师”。
求如何快速地将新收集的证书复制到相应人员的文件夹。 展开
单次操作配合excel可以操作,首先获取所有的文件名到excel,在cmd命令使用dir来获取所有的文件,然后把结果复制到excel,见如下结果
2.通过excel编辑,把姓名分离出来,通过函数即可:
获取姓名:=LEFT(B2,IFERROR(FIND("高级工程师",B2,1),IFERROR(FIND("造价工程师",B2,1),IFERROR(FIND("中级工程师",B2,1),1000))) - 1)
函数可以根据逻辑来修改来适用于更多的工程师类型,不存在会报错
获取到姓名后我们其实即使希望调用 Move 文件名 用户名文件夹 这个命令来实现自动移动,如果需要创建文件名则是 mkdir 用户名文件夹 在运行Move指令,我们把刚刚那个excel调整成下图所示:
我们再把图上的两个红框内容进行赋值,先复制右侧在复制左侧,拷贝到txt文件中,将出现如下所示:
然后保存 将文件保存并将文件名后缀修改为.bat,这样就可以执行了,但是要注意的是,千万不能直接运行,由于cmd.exe文件在system32目录,所以需要手动把目录调整到包含证书文件的目录,然后手动运行或者在上面复制的时候直接把绝对路径加进去,如果直接运行会在系统文件夹创建一堆目录,开始菜单 cmd 管理员打开,如下操作:
输入命令后运行结果如下:
值得注意的是,在保存bat文件的时候一定保存ANSI编码格式,否则在执行命令的过程中可能因为编码问题导致无法识别文件名,保存直接在文本文件中选择即可如下:
以上就是完成的需求,熟练后操作基本在5min以内,如果会高级语言可以做成标准功能,当然就不是通过excel实现了,有兴趣可以把文件私信我,有时间我可以帮你单独写个软件啥的,没编程基础或者VBA、VBS这些,以上是一个折中的方式