2017-03-22 7 views
1

ネットワーク上の2つの異なる場所に2つのチェックサムファイルがあります。一致していることを確認し、一致しない場合は** UNVERIFIED **を出力する必要があります。ですから、私は、両方のファイルを一度に1つの変数に読み込んだ後、検証のために変数を互いに照合する必要があります。チェックサムファイルの検証プロセスを作成しようとしています

:verify_integrity 
    set "verf_integrity_src_file=\\ROCIO-148084\c$\Users\z-perkins-thomas\Documents\bin\batch\verf" 
    set "verf_integrity_dst_file=%cd%\docs\checksum.md5" 
    pushd "%verf_integrity_src_file%" 
    set verf_src= 
    for /f "delims=" %%x in (%verf_integrity_src_file%\checksum.md5) do set verf_src=%verf_src% %%x 
    set verf_dst= 
    for /f "delims=" %%y in (%verf_integrity_dst_file%) do set verf_dst=%verf_dst% %%y 
    @echo %verf_src% 
    goto :verify_argv 

この意志: - > "=="

第二に、私はこの線に沿って何かをしようとした

:verify_integrity 
    set "verf_integrity_src_file=\\ROCIO-148084\c$\Users\z-perkins-thomas\Documents\bin\batch\verf" 
    set "verf_integrity_dst_file=%cd%\docs\checksum.md5" 
    pushd "%verf_integrity_src_file%" 
    setlocal enabledelayedexpansion 
    set content_src= 

    for /f "delims=" %%x in (%verf_integrity_src_file%\checksum.md5) do (set content_src=!content_src! %%x) 

    endlocal 
    setlocal enabledelayedexpansion 
    set content_dst= 

    for /f "delims=" %%y in (%verf_integrity_dst_file%) do (set content_dst=!content_dst! %%y) 

    endlocal 

    @echo %content_dst%==%content_src% 

この意志の出力は何も:私が試した何

チェックサムファイルの最後の行を出力する - > 22534f499bc7755d58412327853c8d9a */zip-archive/utilis0.1.zip

私の質問はこれです、どのように私は両方のファイルをメモリに読み込み、それらが互いに一致するかどうかを確認することができますか?

答えて

4

2つのファイルが同一である場合だけチェックし、fcを使用する:

あなたが確信している場合は、両方のファイルが存在し、それは同じくらい簡単です。そうでない場合

fc "file1.ext" "file2.ext" >nul || echo ** UNVERIFIED ** 

、明示的に%errorlevel%を確認してください。

-1 Invalid syntax (e.g. only one file passed) 
0 The files are identical. 
1 The files are different. 
2 Cannot find at least one of the files. 
+0

私はそれが事であることも知らなかった – jakehimton

関連する問題