我试图检查是否有任何带* .del扩展名的文件在c:\ temp1目录中。 如果find了,我需要将这些文件重命名为.done在同一个x目录下,并删除y目录下的同一个文件,但是它们会有.gz扩展名,请build议。 我正在使用下面的脚本,但是当我运行它时,它说没有find文件。
Inputfilename : 20130216.001_visual_sciences_web_feed.out.del Renamedfilename: 20130216.001_visual_sciences_web_feed.out.done Filetobedeleted: 20130216.001_visual_sciences_web_feed.out.gz
剧本:
@echo off set "dir=c:\raja\temp1" set "ext=del" set "rename=.done" for /f "delims=" %%a in ('dir /b /ad /s "%dir%\*.%extension%"^|sort /r') do ( echo FILE: %%~fa call :rename "%%~fa" ) pause goto :eof
请提出解决scheme。
for %%a in ("c:\raja\temp1\*.del") do ( ren "%%~fa" *.done >nul if exist "c:\temp2\%%~na.gz" del "c:\temp2\%%~na.gz" >nul )
对于源文件中带有.del扩展名的每个文件,重命名为.done,并且如果具有相同名称和.gz扩展名的文件存在(在temp2中,则来自注释),请将其删除