繁体   English   中英

递归运行命令并检查其是否存在

[英]recursively run a command and check to see if it exists

在Windows Env上,我试图找到一种方法来递归检查脏文件中的所有文件,以查看它们的文件名/大小是否与另一个目录中的文件列表匹配,如果它们确实存在于该目录中,那么它将运行命令在找到的文件上

伪码:

Loop{
If(RecursivelyFindFiles() = FileInFileListingInResources()) {

DoCommand(cmd1 -D -R -N %FoundFile C:\resources\%Filename)

}

}

我知道我想要的,只是不知道如何在Windows Env上执行此操作

@echo off
for /r %root% %%f in (*.*) do if exist ..\folder\%%~nxf call :furthertests %%f folder\%%~nxf
goto :eof

:furthertests
echo %1 found
if not "%~z1"=="%~z2" goto :eof
echo file sizes match (%~z1 bytes)
@rem Do your stuff with %1 here
@rem ...

假设%root%是搜索树的开始,并且..\\folder\\包含原型文件。

这是一个开始!

@echo off
rem %1 First folder
rem %2 Other folder to compare
FOR /R %1 IN (*.*) DO echo %%G
echo Done!

代替echo %%G ,您可以调用fc %%G ABC ,它是一个文件比较exe。 但是我不知道如何将ABC格式化为文件夹2(%2)+基础文件名%% G的路径。
之后,对fc的结果进行if测试,然后可以调用处理程序。

对不起,我承认我必须在这里停止!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM