【cp】Linuxでファイル・ディレクトリをコピーするコマンド

Linuxでファイル・ディレクトリをコピーするためのコマンドを紹介します。

【cp】ファイル・ディレクトリをコピーする

ファイル・ディレクトリをコピーするコマンドで、さまざまなオプションが用意されています。

$ cp コピー元 コピー先

オプション「-r」:
from/ディレクトリの内容を再帰的にすべてコピーして、to/ディレクトリを作成する場合。

$ cp -r from_directory/ to_directory/

オプション「-p」:
ファイルの所有者、パーミッション、タイムスタンプを保持したままコピーする場合。

$ cp from_file.txt to_file.txt

オプション「-a」:
再帰的かつ所有者、パーミッション、タイムスタンプを保持したままコピーする場合。「-rp」とほぼ同様の動きとなる。

$ cp -a from_directory/ to_directory/

同じ名前のファイルが既に存在していた場合

すでに同じファイルが存在していた場合は、以下のように上書きされるか確認されます。

$ cp from_file.txt to_file.txt
 cp: `to_file.txt' を上書きしてもよろしいですか(yes/no)?

これを確認なしで強制的に上書きする場合は、「-f」オプションをつけます。

また、「-b」オプションをつけることで、上書きされるファイルのバックアップを保存することできます。

$ ls
 from_file.txt to_file.txt
$ cp -b from_file.txt to_file.txt
 cp: `to_file.txt' を上書きしてもよろしいですか(yes/no)? #yes
$ ls
 from_file.txt to_file.txt  to_file.txt~