2011-01-20 4 views
1

Windows Envでは、ダーティツリーのすべてのファイルを再帰的にチェックして、ファイル名/サイズが別のディレクトリのファイルのリストと一致するかどうかを調べようとしています私はただのWindowsのEnvは再帰的にコマンドを実行し、それが存在するかどうかを確認します

でそれを行う方法を知らない、私が欲しいものを知って

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

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

} 

} 

:彼らはディレクトリに存在しない場合、それはファイル上でコマンドを実行します

Psudocodeを見つけました

答えて

0

ここはスタートです!代わりにecho %%G

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

、あなたはfilecompare exeファイルをあるfc %%G ABCを呼び出すことができます。しかし、私はフォーマットする方法がわかりませんABCは、フォルダ2(%2)へのパス+ %% Gのベースファイル名になるようにしています。
その後、ifの結果をテストしてfcとし、処理を呼び出すことができます。

申し訳ありませんが、私はここで停止する必要があることを認めます!

1
@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 ... 

探索木の開始で、..\folder\は、プロトタイプ・ファイルが含まれている%root%を想定しています。

+0

うわー、あなたはそれをやったようです:)私は今日バッチファイルについて何かを学びました! – TridenT

関連する問題