web-dev-qa-db-ja.com

フォルダー構造を維持しながら、ディレクトリ全体を出力フォルダーにコピーしますか?

ビルドごとに特定のディレクトリを出力フォルダー( "bin")にコピーしたい。ビルド後のスクリプトを介して処理できると思います。しかし、ディレクトリ自体をコピーする方法がわかりません。特定のファイルを処理する方法を知っています。

たとえば、これはファイルに対して機能します:

プロジェクト>プロパティ>ビルドイベント>ビルド後

COPY "$(SolutionDir)Resources\Release Notes.pdf" "$(TargetDir)"

しかし、ディレクトリTemplateがあり、ビルドが成功するとTemplateの下にあるすべてのものがbinフォルダーに必要であるとしますフォルダー構造の維持

私はこれを試しました:

COPY "$(SolutionDir)Resources\Template\" "$(TargetDir)"

Templateディレクトリ内のファイルのみがこの方法でコピーされ、Templateフォルダー内のサブディレクトリとファイルはコピーされません。フォルダーTemplate自体を出力binフォルダーの中に入れたいです。つまり、binは次のようになります。

bin > Template > abc.xxx  
                 xxx.yyy
                 Subdirectory1 > asd.qwe
                                 zxc.qwe 
                 Subdirectory2 > ...

これは重複している可能性がありますが、関連するスレッドが見つかりませんでした。ありがとう。

35
nawfal

これは私のために働いた。 /Sは、すべてを再帰的にコピーするキーです。

XCOPY "$(SolutionDir)Resources\Template" "$(TargetDir)\Template\" /S

プロンプトなしで毎回ファイルを上書きしたかったので、/Yスイッチも。

XCOPY "$(SolutionDir)Resources\Template" "$(TargetDir)\Template\" /S /Y
41
nawfal

COPYではなくXCOPYを試してください。例えば.

XCOPY "$(SolutionDir)Resources\Template\" "$(TargetDir)\Template" /s /i /y

XCOPYの詳細はこちら...

http://www.computerhope.com/xcopyhlp.htm

20
PhilAI