Provided by:
manpages-ja_0.5.0.0.20080615-1_all 
POSIXン
POSIX では、以下のオプションを認識する。
-f 必要であれば、既存のコピー先のファイルを削除する (上技仮)。
-H コマンドラインで指定された全てのシンボリックリンクを辿る。
-i コピー先に既に存在するファイルを上書い垢襪を問い合わせてくる。
(問い合わせは標準エラーに書かれ、返答は標準入力から読まれる。
上書い鮃猟蠅垢詈崚があった場合のみコピーされる。)
-L シンボリックリンクを辿り、
それが指しているファイルをコピーまたは上書い垢襦
-p オリジナルファイルの所-
者・グループ・アクセス権・アクセス時刻を保存する (以下の
--preserve を参照)。
-R ディレクトリを再帰的にコピーし、
一般のファイルでもなくディレクトリでもないものに対しては
それに相応したコピーをする。 (たとえば FIFO
とスペシャルファイルのコピーは、 それぞれ FIFO
とスペシャルファイルにされる。)
-r ディレクトリを再帰的にコピーするが、
一般のファイルでもなくディレクトリでもないものに
対してどうするかは規定されていない。 (したがって -r オプションを
-R オプションの 単なる別名にすることも可能である
(実は推奨されている)。 しかし、現在の GNU 版の cp
のような単純な動作 (下技仮) も禁止されていない。)
GNU細
通常、ファイルは読まれた通りに書そ个気譴襦 --sparse
オプションの場合は例外であるので下気鮖仮箸垢襪海函
デフォルトでは、`cp' はディレクトリのコピーを行わない (以下の -r
オプションを見よ)。
cp はファイルのそれ自身へのコピーを通常は拒否するが、
次のような例外がある: --force --backup が指定されていて、 __cp
はバックアップファイルを作る。
バックアップファイル名には通常または番号付い粒板セ劼、
通常の場合と同じように付く。 これは、既に存在するファイルを変更前に
単純にバックアップしたい場合に様僂任△襦
GNUン
-a, --archive
コピー先で、でい觚造蠍気離侫.ぅ襪旅柔と属世鯤飮する
(ディレクトリ構造体は保存しない)。 -dpR と同じ。
-d, --no-dereference
シンボリックリンクをコピーする場合、シンボリックリンクが指している
ファイルをコピーするのではなく、シンボリックリンクとしてコピーする。
また、コピー元でのハードリンクはコピー先でもハードリンクとして保持される。
-f, --force
コピー先のファイルを書すみまたはアンリンクするため、
ファイルをオープンしようとする。
失敗した場合、途中で中止することなくデフォルトの動作を行う。
--remove-destination を参照。
-i, --interactive
コピー先に上書い気譴訥名錣離侫.ぅ襪存在する場合、 上書-
の可否を問い合わせてくる。
-l, --link
コピーする代わりにハードリンクを作る
(ただし、ディレクトリ以外)。
-L, --dereference
シンボリックリンクを辿り、
それが指しているファイルをコピーまたは上書い垢襦
-p, --preserve
オリジナルファイルの所夕圈Ε哀襦璽廖 アクセス権 (setuid, setgid
ビットを含む)・ 最終修正時刻・最終アクセス時刻を保存する。 所-
者やグループの複製に失敗した場合には、 setuid ビットと setgid
ビットはクリアされる。
(この場合コピー元とコピー先の最終アクセス時刻が異なってしまうことに注意。
コピー操作はコピー元ファイルへのアクセスであるから。)
-P, --parents
コピー先のファイル名の作り方を
「コピー先ディレクトリにスラッシュ (/)
とコピー元ファイルの名前を加える」 とする。 cp の最後の引-
数は既に存在するディレクトリでなければならない。 たとえば、
cp --parents a/b/c existing_dir
というコマンドは `a/b/c'というファイルを `existing_dir/a/b/c' に
(途中のディレクトリがない場合は それも作って) コピーする。
-r ディレクトリを再帰的にコピーする。(FIFO
やスペシャルファイルといった)
ディレクトリでもなくシンボリックリンクでもないものを
通常のファイルとしてコピーする。 この場合 cp
はコピー元ファイルからデータが読み込み、 コピー先に書-
出そうとする。よくある間違いは、 `cp -r' をスペシャルファイル、
FIFO、`/dev' ディレクトリ以下にあるものに対して使うことである。
多くの場合、cp は FIFO や `/dev/console' といった
スペシャルファイルから読み込もうとして永久にハングしたり、
`/dev/zero' をコピーしようとしてコピー先ディスクを溢れさせたり、
不明なディバイスを開いてハードウェアによくわからない効果を
及ぼしてしまったりする。
スペシャルファイルの内容をコピーするのでなく、
スペシャルファイルをその特世鯤飮したままコピーしたい場合は、
--recursive または -R オプションを使うこと。
--remove-destination
ファイルを書すみオープンするのではなく、アンリンクする。
--force を参照。
-R, --recursive
ディレクトリでないものを保存しつつ、
ディレクトリを再帰的にコピーする (すぐ上の -r
オプションを見よ)。
--sparse=WHEN
「スパースなファイル」とは「ホール( 穴 )」
(物理ディスクブロックを占佑靴覆ぅ璽蹈丱ぅ箸力続)
を含むものである。 read
システムコールはそれらのファイルをゼロとして読み込む。
多くのバイナリファイルにはゼロバイトの並びがたくさん含まれているので、
このオプションにより、かなりのディスク容量を節約し、
スピードを上げることがでい襦 デフォルトでは `cp'
は大雑把な発見的手法で
入力されたコピー元ファイルからホールを検知し、
対応する出力ファイルもスパースにする。
WHEN の値は下のいずれかである:
auto デフォルトの動作:入力ファイルがスパースのとぁ
出力ファイルもスパースにする。
always 常に出力ファイルをスパースにする。このオプションは入力ファイルが
スパースなファイルをサポートしないファイルシステム上にあるが、
出力ファイルはスパースなファイルをサポートするファイルシステム上に
置かれる場合に様僂任△襦
never 出力ファイルをスパースにしない。 このオプションの-
意義な利用法を見付けたら筆者に教えてほしい。
--strip-trailing-slashes
指定された全ての引た瑤砲弔い董
後ろに付いているスラッシュを取り除く。 これは `mkdir a; ln -s a
la; mv la/ b' のような場合に役立つ。 この場合 POSIX の命令では、
mv はシンボリックリンク `la' ではなく ディレクトリ `a'
を実際に移動してしまう。
-s, --symbolic-link
ディレクトリ以外のファイルに対して、コピーするかわりに
シンボリックリンクを作る。シンボリックリンクファイルを
カレントディレクトリに作る場合を除ぁ コピー元ファイル名は ('/'
で始まる) 絶対パスでなければならない。
シンボリックリンクをサポートしていないシステムでは、
このオプションは単にエラーメッセージを出力するだけである。
--target-directory=DIR
コピー先ディレクトリを、コマンドラインの最後の引た瑤任呂覆、
オプションで指定する。 xargs(1) と一緒に用いると便利。
-u, --update
ディレクトリ以外のファイルのコピーで、
コピー先ファイルが既に存在し、
修正時刻がコピー元と同じかより新しい場合、 コピーを行わない。
-v, --verbose
コピーする前にそれぞれのファイル名を出力する。
また名前を変更する際のバックアップファイル名も表示する。
-x, --one-file-system
コピーを始めたディレクトリと
異なるファイルシステム上にあるサブディレクトリをコピーをしない。
マウントポイントは同じファイルシステム上にあるのでコピーされる。
GNUン
GNU 版のプログラム cp, mv, ln, install, patch は、上書-
、修正、削除といった場合に、指示すればファイルの
バックアップを作成する。 バックアップファイルを必要とする場合は -b
オプションで指定する。 どのような名前にするかは --backup
オプションで指定する。
バックアップファイルの名前を、ファイル名に拡張子を追加する形で
与えるようにしたい場合、 この拡張子を -S オプションで指示する。
-b, --backup[=METHOD]
上書い發靴は削除の必要がある場合には、
ファイルのバックアップを作成する。 -b は引-
数を取らない点に注意すること。
-S SUFFIX, --suffix=SUFFIX
SUFFIX をバックアップファイルそれぞれに付け加える。
このオプションが指定されていない場合、環曲竸
SIMPLE_BACKUP_SUFFIX に設定されている値が使われる。
SIMPLE_BACKUP_SUFFIX が設定されていない場合の標準値は `~'
である。
-V METHOD, --version-control=METHOD
バックアップファイルの命名方法を指定する。 引た METHOD
には、`numbered' (または `t')、`existing' (または `nil')、
`never' (または `simple') を指定でい襦
このオプションが指定されていない場合、環曲竸 VERSION_CONTROL
の値が使われる。 VERSION_CONTROL
が設定されていない場合の標準値は `existing' である。
このオプションは Emacs 変数の `version-control' に対応している。
邑な METHOD は (他と重複しない短縮形が使える):
t, numbered
常に番号の拡張子を持つバックアップが作られる。
nil, existing
番号の拡張子を持つバックアップがすでにある場合には
番号の拡張子を持つバックアップを、
そうでない場合には単純なバックアップを作成する。
never, simple
常に単純なバックアップが作られる。
このオプションは推奨されない。 代りに --backup=METHOD
を使うこと。
GNUン
--help 標準出力に使用方法のメッセージを出力して正常終了する。
--version
標準出力にバージョン情報を出力して正常終了する。
-- オプションリストの終りを示す。
数
変数 LANG, LC_ALL, LC_CTYPE, LC_MESSAGES が通常の意味を持つ。 GNU
版では、変数 SIMPLE_BACKUP_SUFFIX と VERSION_CONTROL が
バックアップファイルの命名法を上で説明した方法で管理する。
拠
POSIX 1003.2
意
このページは fileutils-4.1 パッケージの cp
コマンドについて説明したものである;
その他のバージョンでは少し違いがあるかもしれない。 修正や追加は
aeb@cwi.nl, aw@mail1.bet1.puv.fi, ragnar@ragnar-hojland.com
宛にメールで連絡してください。 プログラムのバグについては bug-
fileutils@gnu.org へ報告してください。