Board logo

标题: [文本处理] 【已解决】批处理寻找出特定关键词的文件名,并且移动到待勘误的文件夹里 [打印本页]

作者: tpnybaby    时间: 2023-5-20 19:11     标题: 【已解决】批处理寻找出特定关键词的文件名,并且移动到待勘误的文件夹里

各位老哥好:
在同一个文件夹下,我有这些格式的文件
abcd.jpg   def.jpeg   123.xml   12wds.png  
但是其中,却混入了一些前缀名的末尾带有.jpg的文件,类如
asdf.jpg.jpg     asdf.jpg.xml  
我希望能把他们找出来,移动到一个待勘误的文件夹里,
想请问老哥们,
我的这条直接运行的语句,到底问题出在哪里?
  1. cmd /K (for /F "delims=" %a in ('dir /a-d /b^|find ".jpg"') do (md "%~待勘误" & move /Y "%~a" "%~待勘误"))
复制代码

作者: buyiyang    时间: 2023-5-20 20:20

特殊符号^|&需要处理
  1. cmd /K for /F "delims=" %a in ('dir /a-d /b^^^|find ".jpg"') do md "待勘误" ^& move /Y "%~a" "待勘误"
复制代码
或者给命令字符串加双引号
  1. cmd /K "for /F "delims=" %a in ('dir /a-d /b^|find ".jpg"') do md "待勘误" & move /Y "%~a" "待勘误""
复制代码

作者: tpnybaby    时间: 2023-5-20 22:16

特殊符号^|&需要处理或者给命令字符串加双引号
buyiyang 发表于 2023-5-20 20:20



    谢谢老哥,但是用了你的代码,我的几个正常后缀名.jpg的图片也进去了
作者: buyiyang    时间: 2023-5-20 22:56

回复 3# tpnybaby


    上面只是改了语法错误,试试这个
  1. for %i in (*) do for %a in ("%~ni") do if "%~xa"==".jpg" md "待勘误" & move /Y "%i" "待勘误"
复制代码

作者: tpnybaby    时间: 2023-5-20 23:19

回复 4# buyiyang
好像不能直接使用
作者: 77七    时间: 2023-5-21 02:28

命令行
  1. for /f "delims=" %i in ('dir /b /a-d ^|find ".jpg."') do md "待勘误" 2>nul & move /y "%i" "待勘误"
复制代码

作者: qixiaobin0715    时间: 2023-5-21 08:45

搜索文件可不用find来过滤:
  1. dir /b /a-d *.jpg.*
复制代码

作者: tpnybaby    时间: 2023-5-21 11:01

回复 6# 77七


    谢谢您
作者: tpnybaby    时间: 2023-5-21 11:01

回复 7# qixiaobin0715


    谢谢您
作者: tpnybaby    时间: 2023-5-21 11:03

回复 4# buyiyang


    谢谢您




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2