2016-07-29 18 views
0

私はMicrosoftの管理対象ネットワークに切り替えた学校で働いています。いくつかのテストフォルダに質問を入力しようとしています。質問はTest_dataというフォルダにあり、さまざまなファイル、いくつかのサブフォルダ(いくつかは空白、その他は空ではない)が含まれています。ソースとデスティネーションは、たとえば、次のとおりです。ファイルとサブフォルダを含むフォルダを1つの場所に複数のフォルダにコピーする

出典:

d:\Tests\Test_Data 
     document 1.docx 
     image.png 
     Subfolder1 
      Question1-3.xlsx 
      animal database.accdb 

先:

d:\catprac 
     catprac-01 
     catprac-02 
     catprac-03 

     ... 

     catprac-72 

私は必要なものは、フォルダの "TEST_DATA" であり、それは、それぞれ「catprac-で終わるした内容ですnn "フォルダに移動します。

私は研究を行い、このスクリプトの多くのバージョンを試しましたが、機能しません。誰でも助けることができ、これがどうなる

@ECHO OFF 

    FOR /d %%I IN (d:\catprac\*) DO (

    XCOPY "d:\Tests\*" "%%I d:\catprac\"/O /X /E /H /K /S 

答えて

0

を?:ください

for /d %%D in (D:\catprac\*) do @xcopy D:\tests\Test_Data %%D /s /e 

あなたはXCOPYに他の空想のオプションを追加することができますが示すものは必要不可欠です。コマンドの前の '@'は、実行時に行のエコーを抑制します。

BTW(これはこの解決策には必須ではありません):Windows 7および10の場合、xcopyは、はるかに性能が高く、強力です。robocopyが優先されます。 xcopyオプションを使用することができます。そのため、構文は変更されません。

+0

答えがわかります - コードは素晴らしいですし、うまくいきます!私は一つのことを聞いてもいいですか?可能であれば、トップレベルのフォルダ "Test_Data"とそのすべての内容(サブフォルダとファイルをcatprac-01、catprac-02など)にコピーするコードを含めることができますか? – dkp

+0

@xcopy D:\ tests \ * %% D/s/e'と(D:\ catprac \ *)の/ d %% Dのようなあなたのコードに少し変更を加え、最上位のフォルダその内容は各試験フォルダにコピーされました。うーん!!ありがとう:-) – dkp