Windowsのファイル、ディレクトリ比較をする
ファイルの改竄チェックとしてLinuxであればTripwireが有名で
WindowsのソフトだとWinmergeが有名だと思いますが、それをWindowsのコマンドできないかと調べたときのメモになります。
■コマンド:fc
>fc /b "C:\temp\*" "C:\temp2\*"
※/bはバイナリ形式
C:\temp配下のファイルとC:\temp2配下のファイルを比較しています。
フォルダの中にさらにフォルダがあるとその中までは比較されません。
上記コマンド実行後にerrorlevelを確認すると差分があったかわかります。
■実際の出力
・差分無し
C:\Users\kato\Desktop>fc 1.txt 2.txt
ファイル 1.txt と 2.TXT を比較しています
FC: 相違点は検出されませんでした
・差分あり
C:\Users\kato\Desktop>fc 1.txt 2.txt
ファイル 1.txt と 2.TXT を比較しています
***** 1.txt
***** 2.TXT
aaa
*****
上記をバッチファイルで相違があるか判断するには下記を使用します。
echo %ERRORLEVEL%
差がない場合:0
差がある場合:1