ディレクトリ全体(ディレクトリフォルダを含む)を別のディレクトリにコピーするコマンドラインコマンド

ディレクトリ全体(ディレクトリフォルダを含む)を別のディレクトリにコピーするコマンドラインコマンド

コマンドラインを使用して、あるディレクトリを別のディレクトリにコピーしたいと思います。たとえば、ディレクトリC:/testとがありますC:/test2

結果が次のようになるようにC:/testコピーしたいですC:/test2C:/test2/test

C:/testこれまでに見つけたものはすべて、に含まれるファイルとフォルダーのみを にコピーしC:/test2、親ディレクトリは除外します。

答え1

XCOPYスイッチを使ってみてください/E。詳細情報ここ

私は脳からこの情報にアクセスする必要がなかった

アップデート

ドキュメントには、ソース ディレクトリからすべてのファイルとサブディレクトリをコピーする (つまり、親ディレクトリは作成されない) と記載されているため、最初testに を作成しC:\test2てから を使用する必要がありますXCOPY

答え2

xcopy c:\test c:\test2\test /s /e /h

XCOPYに関する情報はこちら[12]

答え3

ROBOCOPYバックアップ スクリプトを作成する場合に使用します。xcopyは非推奨になっており、近い将来に段階的に使用されなくなる可能性があります。 は、できることはrobocopyすべて実行できますxcopy。 また、より柔軟で信頼性も高くなります。 を使用してスクリプトを作成すると、robocopy将来も使用できます。


  1. robocopy を使用すると、フォルダーを簡単にコピーできます。robocopy コマンドは xcopy コマンドに代わるものです。内容の定義を気にすることなく、フォルダー全体をすばやくコピーできます。たとえば、C:\tools ディレクトリの内容すべてを新しいフォルダー D:\backup\tools にコピーするには、次のように入力します。

     robocopy C:\tools D:\backup\tools /e
    

    /e 修飾子は、robocopy にすべてのサブディレクトリを含めるように指示します。これには空のフォルダーも含まれます。robocopy は隠しファイルとシステム ファイルを自動的にコピーします。ターゲットの場所にディレクトリが存在しない場合は、新しいディレクトリを作成します。

  2. ディレクトリをミラーリングします。ディレクトリをミラーリングすると、バックアップを作成するのに便利です。robocopy のミラー オプションは、ソースから宛先にすべてのコンテンツをコピーします。その後、ソースに存在しないものは宛先から削除されます。これにより、バックアップにはファイルの最新バージョンのみが含まれるようになります。たとえば、C:\Users\My Documents を D:\backup\My Documents にミラーリングするには、次のように入力します:[4]

     robocopy "C:\Users\My Documents" "D:\backup\My Documents" /mir
    

    この機能は元のファイルのすべての権限を保持します。

  3. 再起動を有効にします。コピーの途中で接続が切断された場合に備えて、プロセスを再起動する機能を含めることをお勧めします。

     robocopy "C:\Users\My Documents" "D:\backup\My Documents" /z
    
  4. コピー プロセスをログに記録します。robocopy を使用すると、ログ ファイルを作成できます。これにより、問題を特定したり、コピーされた内容のアーカイブを生成したりすることができます。

     robocopy "C:\Users\My Documents" "D:\backup\My Documents" /log+:<filename>.txt
    

    /log+ 修飾子は、既存のログ ファイルを上書きするのではなく、追加します。古いログ ファイルを上書きしたい場合は、/log:.txt を使用します。

答え4

XCOPY SourceDrive: DestinationDrive: /S /E

たとえば、コマンド ラインまたは xboot コマンド環境からE:ドライブ データをドライブ (外付けハード ドライブ) にコピーする必要がある場合などです。H:

xboot:\>XCOPY E:\ "H:\BackupFolder\" /S /E

関連情報