XCOPY – ファイルとディレクトリツリーをコピーする – Windowsコマンド

Windowsコマンド

ファイルとディレクトリツリーをコピーするコマンドです。COPYよりもオプションが豊富で高機能です。
様々なパターンに対応できるため、ファイルサーバー等のファイルのバックアップ機能構築で利用することもできます。
テスト時にフォルダ構成だけ確保してデータを削除したい場合に、「/T /E」オプションを利用して事前にフォルダ構成をコピーして取得しておきます。テスト完了時にルートディレクトリから削除して保存していたフォルダ構成を再度コピーすることで初期化することが可能です。

XCOPYコマンドの使い方

使用法

XCOPY コピー元 [コピー先] [/A | /M] [/D[:日付]] [/P] [/S [/E]] [/V] [/W]
                      [/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U]
                      [/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z] [/B]
                      [/EXCLUDE:ファイル1[+ファイル2][+ファイル3]...]

  コピー元    コピーするファイル (複数可) を指定します。
  コピー先    新しいファイルの場所や名前を指定します。

オプション

/A          アーカイブ属性が設定されているファイルのみをコピーし、
            属性は変更しません。
/M          アーカイブ属性が設定されているファイルのみをコピーし、
            アーカイブ属性を解除します。
/D:月-日-年 指定された日付以降に変更されたファイルをコピーします。
            日付が指定されなかったときは、コピー元の日付がコピー先の日付より
            新しいファイルだけをコピーします。
/EXCLUDE:ファイル1[+ファイル2][+ファイル3]...
            コピーの除外対象を特定するための文字列を記述したファイルを指定
            します (複数指定可)。文字列は、1 行に 1 つずつ記述します。
            その文字列が、コピー対象ファイルの絶対パスの一部と一致した場合、
            そのファイルはコピーから除外されます。たとえば、\obj\  という
            文字列を指定するとディレクトリ obj の下の全ファイルが除外 され
            ます。 .obj  という文字列を指定すると .obj という拡張子のファ
            イルがすべて除外されます。
/P          コピー先のファイルを作成する前に確認のメッセージを表示します。
/S          空の場合を除いて、ディレクトリとサブディレクトリをコピーします。
/E          ディレクトリまたはサブディレクトリが空であってもコピーします。
            "/S /E" と同じ意味です。/T の内容を変更する際にも使用できます。
/V          コピー先の各ファイルのサイズを検証します。
/W          コピーを開始する際に、任意のキーを押すことを求めるメッセージを
            表示します。
/C          エラーが発生してもコピーを続けます。
/I          指定されたコピー先が存在せず、コピーするファイルが複数の場合、
            コピー先をディレクトリとしてコピーします。
/Q          コピー中にファイル名を表示しません。
/F          コピー中にコピー元とコピー先の全ファイル名を表示します。
/L          コピーされるファイル名を表示します。
/G          暗号化をサポートしないコピー先に、暗号化されたファイルをコピー
            することを許可します。
/H          隠しファイルやシステム ファイルもコピーします。
/R          読み取り専用ファイルを上書きします。
/T          ファイルはコピーせずにディレクトリ構造のみを作成します。空の
            ディレクトリまたはサブディレクトリは除きます。"/T /E" と指定
            すると空のディレクトリやサブディレクトリも作成されます。
/U          コピー先に既に存在するファイルだけをコピーします。
/K          属性をコピーします。指定しない場合、読み取り専用属性はリセット
            されます。
/N          生成された短い名前を使用してコピーします。
/O          ファイルの所有権と ACL 情報をコピーします。
/X          ファイルの監査設定をコピーします (/O を含む)。
/Y          既存のファイルを上書きする前に確認のメッセージを表示しません。
/-Y         既存のファイルを上書きする前に確認のメッセージを表示します。
/Z          再起動可能モードでネットワーク ファイルをコピーします。
/B          シンボリック リンクのリンク先ではなく、シンボリック リンク自体を
            コピーします。
/J          バッファされていない I/O を使ってコピーします。サイズが大きい
            ファイルに適しています。

使用例

■カレントディレクトリ(testdir3)のファイルを全て、一つ上の階層のディレクトリ(testdir2)へコピーする。
c:\sample\testdir3>xcopy . ..\testdir2\ /E /I
.\execSQL.bat
.\execSQL.sql
.\mergeSQL.bat
.\①.sql
.\②.sql
.\③.sql
.\④-1.sql
.\④-2.sql
8 個のファイルをコピーしました

c:\sample\testdir3>

 その他注意事項など

スイッチ /Y は環境変数 COPYCMD に前もって設定しておくことができます。
この設定は、コマンド ラインの /-Y で上書きすることができます。

 対応OS

Windows8, Windows7, WindowsXP, WindowsVista, Windows2000

コメント

タイトルとURLをコピーしました