"old.txt" と "new.txt" があり、内容が変わっていれば "new.txt" で置き換えて 変わっていなければ そのまま(タイムスタンプを変更したくない)というような 処理を行います。
つまり、次のような処理になります。
ファイルの比較は、FC コマンドを使用します。
FC コマンドは、比較した結果が「一致」の場合、正常終了、 「不一致」の場合は、異常終了となるので、それを利用して 次のようなコマンドを作成します。
C:\> fc /B "old.txt" "new.txt" > nul 2>&1 && ^ More? del "new.txt" || ^ More? move /Y "new.txt" "old.txt"
コマンドが長いので折り返していますが、1 行のコマンドです。
実行すると、結果的に "old.txt" が 1 つだけ残ります。
"old.txt" と "new.txt" が変わってるだけでなく、 "old.txt" が存在しない場合も "new.txt" で置き換えます。
ファイルを指定して実行しましたが、これを使ってバッチ処理を作れば フォルダ単位で同じ名前のファイルを比較して置き換え、といったこともできます。 サーバ間の移動などを行うときに、最新版のファイルだけを移動して、既存のファイルは タイムスタンプを更新したくない、といったときなどに使えそうです。