ファイルのコピー(COPY)

COPY コマンドを使用すると 1 つまたは複数のファイルのコピーをすることができます。ここではコマンドプロンプトにおける COPY コマンドの使い方について解説します。

(Last modified: )

COPYコマンドの使い方

COPY コマンドを実行すると1つまたは複数のファイルをコピーすることができます。書式は次の通りです。

COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B] 送り側 [/A | /B]
[+ 送り側 [/A | /B] [+ ...]] [受け側 [/A | /B]]

オプションが非常に多いので、今回説明するものだけに絞ると次の通りです。

COPY [/Y | /-Y] 送り側 [+ 送り側 [+ ...]] [受け側]

1つまたは複数のファイルをコピーする

例えばカレントディレクトリにある memo.txt を同じディレクトリ内に memo_back.txt としてコピーする場合には次のように実行します。

copy memo.txt memo_back.txt

1つまたは複数のファイルをコピーする(1)

「1 個のファイルをコピーしました。」と表示されてコピーが完了し新しいファイル memo_back.txt が作成されました。

1つまたは複数のファイルをコピーする(2)

コピー元の memo.txt とコピー先の memo_back.txt のファイルの中身を TYPE コマンドを使ってそれぞれ表示してみるとまったく同じであることが確認できます。(TYPE コマンドについては「テキストファイルの内容を表示(TYPE)」を参照してください)。

1つまたは複数のファイルをコピーする(3)

-- --

別のディレクトリに同じ名前でコピーする場合はファイル名を省略することができます。例えばカレントディレクトリにある memo.txt を c:\test\back ディレクトリに同じファイル名でコピーする場合には次のように実行します。

copy memo.txt c:\test\back

1つまたは複数のファイルをコピーする(4)

back ディレクトリに同じファイル名でコピーが完了しました。

1つまたは複数のファイルをコピーする(5)

-- --

ワイルドカードを使用することで複数のファイルを別のディレクトリにコピーすることができます。例えばカレントディレクトリにある拡張子が.txt のファイルをすべて c:\test\back ディレクトリに同じファイル名でコピーする場合には次のように実行します。

copy *.txt c:\test\back

1つまたは複数のファイルをコピーする(6)

カレントディレクトリには .txt の拡張子のファイルが 2 つありましたので、 2 つのファイルが back ディレクトリにコピーされました。

1つまたは複数のファイルをコピーする(7)

ディレクトリに含まれるファイルをまとめてコピーする

COPY コマンドを実行する時に、コピー元としてファイル名ではなくディレクトリを指定すると、ディレクトリに含まれるファイルがすべてコピーされます。この場合、コピー先もディレクトリを指定する必要があります。

例えば c:\test ディレクトリの中にあるすべてのファイルを c:\my ディレクトリへコピーするには次のように実行します。

copy c:\test c:\my

ディレクトリに含まれるファイルをまとめてコピーする(1)

コピー先の c:\my ディレクトリを確認してみると、コピー元にあった 2 つのファイルが同じ名前でコピーされていることが確認できます。

ディレクトリに含まれるファイルをまとめてコピーする(2)

なおコピー元のディレクトリにサブディレクトリがあった場合でも、サブディレクトリやサブディレクトリの中のファイルはコピーされません。コピーされるのは指定してディレクトリに入っているファイルだけです。

複数のファイルを1つのファイルにまとめる

COPY コマンドでは複数のファイルを1つのファイルにまとめることができます。次の書式を使います。

COPY 送り側1+送り側2[+ ...] 受け側

コピー元として複数のファイルを「+」を使って続けて記述してください。例えばカレントディレクトリにある memo.txt と note.txt をまとめてカレントディレクトリの matome.txt というファイルを作成する場合次のように実行します。

copy memo.txt+note.txt matome.txt

複数のファイルを1つのファイルにまとめる(1)

2 つのファイルの内容をまとめた 1 つのファイルが新しく作成されました。

複数のファイルを1つのファイルにまとめる(2)

TYPE コマンドを使ってコピー元の 2 つのファイルの中身と、新しく作成されたファイルの中身を確認してみると、コピー元の 2 つのファイルの内容がまとめられていることが確認できます。

複数のファイルを1つのファイルにまとめる(3)

コピー先に同じ名前のファイルがあった時に上書き保存するかどうかの確認を行わない

COPY コマンドを使ってファイルをコピーする場合、コピー先に同じ名前のファイル名が既に存在していた場合、上書きして保存するかどうかの確認が行われます。例えばカレントディレクトリにある memo.txt を c:\test\back ディレクトリにコピーしようとしたときに、コピー先のディレクトリに同じ名前の memo.txt が存在すると上書き保存するかどうかの確認が行われます。

copy memo.txt c:\test\back

コピー先に同じ名前のファイルがあった時に上書き保存するかどうかの確認を行わない(1)

上書きする場合は[y]キーを押したあとで[Enter]キーを押します。上書きはせずにコピーを行わない場合は[n]キーを押したあとで[Enter]キーを押します。今回は[y]を押しましたので上書きされてコピーされます。

コピー先に同じ名前のファイルがあった時に上書き保存するかどうかの確認を行わない(2)

このようにデフォルトではコピー先に同じファイル名があった場合に上書きするかどうかの確認をしますが、確認を行わずに上書きでコピーする場合には「/Y」オプションを使って次のように実行します。

copy /y memo.txt c:\test\back

コピー先に同じ名前のファイルがあった時に上書き保存するかどうかの確認を行わない(3)

コピー先に同じファイル名のファイルがあっても確認が行われずに上書きでコピーが行われました。

-- --

COPY コマンドを使ってファイルをコピーする方法について解説しました。

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。