1. ホーム
  2. windows

[解決済み] ファイルを上書きせずにコピーする

2022-10-08 23:57:37

質問

コマンドラインで "ディレクトリ A からディレクトリ B にすべてのファイルをコピーするが、ファイルがすでにディレクトリ B に存在する場合は、どちらのファイルが新しくても上書きせず、プロンプトも表示しない。

copy, move, xcopy & robocopyを調べましたが、一番近いのはrobocopyに "AをBにコピーするが、新しいファイルを古いファイルで上書きしない,"と伝えることですが、これは私にはうまくいきません。私は xxcopy を見ましたが、ビルドを行うために他の SVN ユーザーがそのツールをインストールする必要がある Visual Studio のビルド後のイベントにサードパーティの依存関係を持ちたくないので、それを破棄しました。

Visual Studio 2010 のビルド後イベントにコマンドラインを追加し、ビルド後イベントから生成されるファイルが T4 テンプレートから生成されるファイルが、新しい EF モデルオブジェクトはそれらが属するプロジェクトフォルダに配布されますが、既存のオブジェクトのために再生成されたファイルは、潜在的に編集された宛先ファイルを上書きしません。

T4 テンプレートが再生成されるため、ソース ファイルは常に新しくなり、"newer" スイッチは確実に使用できない、と思うのですが。

私は部分クラスを使用できるものには部分クラスを使用していますが、部分クラスを使用できないものを生成することもあります (たとえば、デフォルトの EditorTemplate や DisplayTemplate *.ascx ファイルを生成する場合など)。

どなたか、解決された同様の問題をお持ちの方はいらっしゃいますか?

どのように解決するのですか?

For %F In ("C:\From\*.*") Do If Not Exist "C:\To\%~nxF" Copy "%F" "C:\To\%~nxF"