CP(1) | FSF | CP(1) |
名前¶
cp - ファイルやディレクトリをコピーする
書式¶
cp [オプション]...
SOURCE DEST
cp [オプション]...
SOURCE... DIRECTORY
説明¶
SOURCEファイルをDESTファイルへコピーする。 または、複数のSOURCEファイルをDIRECTORY(ディレクトリ)下へコピーする。
- -a, --archive
- -dpRと同じ。
- -b, --backup
- 上書きされたり、削除されることになるファイルのバックアップを作る。
- -d, --no-dereference
- リンクを保存する。 (訳注: シンボリックリンクをコピーするときは、 シンボリックリンクが指しているファイルをコピーするのではなく、 シンボリック自体をコピーする。 また、ハードリンクされたもの同士をコピーする場合は、 それら同士はコピー先でもハードリンクされたままになる。)
- -f, --force
- コピー先が存在する場合、確認を求めずに削除する。
- -i, --interactive
- 上書きする前に確認を求める。
- -l, --link
- コピーのかわりにハードリンクを作る。
- -p, --preserve
- 可能ならファイル属性を保持する。
- -P, --parents
- コピー元のパスをDIRECTORY(ディレクトリ)下に追加する。 (訳注: 例えば、 `cp --parents a/b/c existing_dir' というコマンドは a/b/c というファイルを existing_dir/a/b/c というファイルに(間のディレクトリもなければ作って)コピーする。)
- -r
- 再帰的にコピーする。 その際、ディレクトリ以外は全てファイルとしてコピーされる。
- --sparse=WHEN
- スパースなファイルの生成をコントロールする。
- -R, --recursive
- ディレクトリを再帰的にコピーする。
- -s, --symbolic-link
- コピーのかわりにシンボリックリンクを作る。
- -S, --suffix=SUFFIX
- バックアップファイルを作る際の添字を指定する。
- -u, --update
- コピー先ファイルよりもSOURCEファイルの方が新しい場合か、 または、コピー先ファイルが見付からない場合のみコピーする。
- -v, --verbose
- 実行内容を表示する。
- -V, --version-control=WORD
- バックアップファイルの命名方法を指定する。
- -x, --one-file-system
- 同一ファイルシステム内に留める。 (訳注: コピーする際、違うファイルシステムのサブディレクトリはコピーしない。)
- --help
- 使用方法を表示して正常終了する。
- --version
- バージョン情報を出力して正常終了する。
デフォルトでは、大雑把な発見的手法でスパースなSOURCEファイルを検出し、 対応するDESTファイルを同様にスパースにする。 --sparse=autoを指定するとデフォルトの動作となる。 --sparse=alwaysを指定すると、 SOURCEファイルが十分長いゼロバイト列を含む場合はいつでも、 スパースなDESTファイルを生成する。 --sparse=neverを指定すると、スパースなファイルの生成を禁止する。
環境変数SIMPLE_BACKUP_SUFFIXが設定されていない場合、 バックアップファイルを作る際の添字は ~ である。 バックアップファイルの命名方法は、環境変数VERSION_CONTROLで指定する。 指定する値は以下の通り。
- t, numbered
- 番号の拡張子を持つバックアップを作成する。
- nil, existing
- 番号の拡張子を持つバックアップがすでにある場合には、 番号の拡張子を持つバックアップを、 そうでない場合には単純なバックアップを作成する。
- never, simple
- 常に単純なバックアップを作成する。
特殊ケースとして、forceオプションとbackupオプションが同時に指定され、かつ、 SOURCEとDESTが同じ名前の存在する通常のファイルである場合、 SOURCEのバックアップを作成する。
バグレポート¶
バグレポートは<bug-fileutils@gnu.org>へ。
関連項目¶
cp の完全なドキュメントはinfoマニュアルとしてメンテナンスされている。 info と cp が正しくインストールされていれば、次のコマンド
- info cp
で完全なマニュアルを参照することができる。
訳注¶
以下にディレクトリのコピー例を添付する。
<<testdir に各種の file
を作り、cp を各種 option
付きで実行した結果>>
(左から、パーミッション、ハードリンクの数、ファイル名)
---------------- begin ----------------------
testdir:
drwxr-xr-x 2 directory/
-rw-r--r-- 2 file
-rw-r--r-- 2 hardlinkfile
prw-r--r-- 2 hardlinkpipe|
prw-r--r-- 2 pipe|
lrwxrwxrwx 2 symlinkfile -> file
lrwxrwxrwx 1 symlinkpipe -> pipe|
testdir-R:
drwxr-xr-x 2 directory/
-rw-r--r-- 1 file
-rw-r--r-- 1 hardlinkfile
prw-r--r-- 1 hardlinkpipe|
prw-r--r-- 1 pipe|
-rw-r--r-- 1 symlinkfile
prw-r--r-- 1 symlinkpipe|
testdir-a:
drwxr-xr-x 2 directory/
-rw-r--r-- 2 file
-rw-r--r-- 2 hardlinkfile
prw-r--r-- 2 hardlinkpipe|
prw-r--r-- 2 pipe|
lrwxrwxrwx 1 symlinkfile -> file
lrwxrwxrwx 1 symlinkpipe -> pipe|
testdir-dR:
drwxr-xr-x 2 directory/
-rw-r--r-- 2 file
-rw-r--r-- 2 hardlinkfile
prw-r--r-- 2 hardlinkpipe|
prw-r--r-- 2 pipe|
lrwxrwxrwx 1 symlinkfile -> file
lrwxrwxrwx 1 symlinkpipe -> pipe|
testdir-dr:
drwxr-xr-x 2 directory/
-rw-r--r-- 2 file
-rw-r--r-- 2 hardlinkfile
-rw-r--r-- 2 hardlinkpipe
-rw-r--r-- 2 pipe
lrwxrwxrwx 1 symlinkfile -> file
lrwxrwxrwx 1 symlinkpipe -> pipe
testdir-r:
drwxr-xr-x 2 directory/
-rw-r--r-- 1 file
-rw-r--r-- 1 hardlinkfile
-rw-r--r-- 1 hardlinkpipe
-rw-r--r-- 1 pipe
-rw-r--r-- 1 symlinkfile
-rw-r--r-- 1 symlinkpipe
----------------- end ------------------------
November 1998 | GNU fileutils 4.0 |