带findstr和批量重命名的批处理文件

问题描述:

我在这方面很新颖,但无论如何我尝试。 如何编写批处理文件来查找包含特定单词的文件然后重命名该文件? 我使用findstr,并找到该文件,但是如何从此获取输出,并使用输出重命名文件或这些文件?带findstr和批量重命名的批处理文件

我希望有人能帮助我。 谢谢 斯特芬

原始地,

@ECHO OFF 
SETLOCAL 
SET "sourcedir=u:\sourcedir" 
FOR /f "delims=" %%a IN ('findstr /m /L /c:"find me" "%sourcedir%\*.*"') DO (
ECHO(REN "%%a" "destinationname" 
) 

GOTO :EOF 

你需要改变的sourcedir设置,以满足您的具体情况。

然而,游戏是在你没有告诉我们的 - 如何你想重命名文件,因为你只能在一个目录中有任何特定名称的文件。

+0

脱线喜现在 它的工作.....你有一个“(”到多,我选择移动的文件,而不是将其重命名 @ECHO OFF SETLOCAL SET“sourcedir = C:\中旬“ FOR/f”delims =“%% a IN('findstr/M/L/I/c:”milwaukee“”%sourcedir%\ *。*“')DO( move”%% a“”c :\ mid \ mid2“) GOTO:EOF – 2014-09-27 17:09:09

+0

啊 - 你的意思是'('in'echo('?嗯,不 - 这实际上不是错误,'echo%something'和'echo %something%'。如果'something'是空的,第一个将显示'echo'状态(ON或OFF),但第二个会默默地显示,好吧,没有任何东西......好的移动到呃,移动文件。重命名可以是一个体操nightm是。 – Magoo 2014-09-27 17:29:52