web-dev-qa-db-ja.com

'base'フォルダを含むディレクトリをコピーします

コマンドラインからfolderAをfolderBにコピーする必要があります。

c:\temp
        \folderA
        \folderB

になるはずです

c:\temp
         \folderA   
         \folderB\folderA

つまり、正確にWindowsエクスプローラーを使用してfolderAをコピーし、folderBに貼り付けた場合と同じです。

これは動作しません:

xcopy /e folder1 folder2\

結局、folderA自体ではなくfolderBにfolderAの内容が表示されます。

おかしなことに、moveは、コピーの代わりに移動することを除いて、私が望むことを正確に実行します:)

フォルダをコピーし、そのフォルダ自体をコピーのベースフォルダとして含めるにはどうすればよいですか?ターゲットフォルダを作成するためにmkdirを使用する必要はありません。 。 (しかし、それは仕事を厄介に終わらせます)

上記のようにしないので this に私を向けないでください。

更新:

Robocopyを使用した以下の回答のおかげで、xcopyを使用してもプロンプトが表示されない解決策が見つかりました。

xcopy/e/i folderA folderB\folderA

使用 /iターゲットがディレクトリかファイルかを尋ねられないようにするオプション。

1
wal

試してみてください

xcopy folder1 folder2\folder1 /e /i
4

robocopy \folderA \folderB\folderA /sは、宛先にfolderAを作成し、再帰コピーを実行します。他に必要なオプションを確認してください。例えば/e空のフォルダを含めたい場合。

1
John Gardeniers

Robocopy

私がパラメータを正しく理解しているなら、あなたはRobocopy C:\temp\folderA C:\temp\folderB /COPYALL /E /DCOPY:Tをしたいと思うでしょう

(フォルダーAを場所Bにコピーし、すべての属性とACLを保持し、空のものも含めてすべてのサブフォルダーを含め、ディレクトリのタイムスタンプを保持します。)

0
HopelessN00b