CP - コピーファイルとディレクトリ

概要

CP [ オプション] ファイルパス
CP [ オプション] ファイル...ディレクトリ

POSIXオプション:[-fipRr]

GNUパラメータ(短い形式):[-abdfilprsuvxPR] [-S SUFFIX ] [-V {既存の、番号、簡易}] [ -スパース= WHEN ] [--help] [--version] [ - ]

説明

CPのコピーファイル(またはディレクトリ)。あなたは、指定した宛先、またはディレクトリオブジェクトディレクトリにコピーされたファイルの任意の数にファイルをコピーするには、このコマンドを使用することができます。

最後のコマンドのパラメータは、既存のディレクトリの名前である場合、CPは、各ソースになるファイルは、(元のファイル名を維持するために)そのディレクトリにコピーされます。与えられたパラメータファイル名であれば2つだけ。それをコピーしたファイル、以前のものにファイルの最後の引数は、ディレクトリ名、ファイル名ではなく、与えられた二つ以上の非オプションの引数が間違っている場合。

 

(このように:/ Bが既に存在する場合、 'CP -r / A / Bが' / Bへ/ B / Aとなり/ A / Xに/ Bをコピーする/ B / A / Xとなる/コピーされます。しかし、/ bが事前に存在しない場合、それは/ / Bおよび複製/ A / Xへ/ Bのコピーが/ ​​B / A / Xになりますが、/ bが事前に存在しない場合、それはコピー/意志これは、/ Bおよび/ A / X / B / Xとして複製します)。

ファイルおよび/またはディレクトリのモードモードと作成された元のファイルが同じである場合、ユーザーは(-pオプションがない限り)のumaskの値を変更するには、(ただし、再帰的にディレクトリをコピーする場合、新しいディレクトリは一時的になります最終的なモードS_IRWXU(0700)と一緒に論理和(OR)、プロセスは、読み取り、書き込み、これらの新しいディレクトリを探すことができますように。

別の既存のファイルにコピーするときに、システムは`open関数を呼び出します(エラーメッセージ以外の外側に生成することができる)、それはまったく何もしない、独自にファイルをコピーします(パス、O_WRONLY |。 O_TRUNC)「 先のファイルを開きます。新しいファイルにコピーする際、システムは`open関数を呼び出します(パス、O_WRONLY | O_CREAT 、モード) 'はファイルを作成し、この操作が失敗した場合、ファイルが存在し、-fオプション,. CPは、既存のを削除しようファイルは、正常に削除された場合、新しいファイルの処理として扱います。

POSIXオプション

POSIXは、4つのオプションと半分を識別します。

-f
必要であれば、既存の宛先ファイルを削除する。(先に説明したように)。
-私
既存の通常のオブジェクト・ファイルを上書きするように要求。(質問の標準誤差で表示され、その答えは、標準入力から読み込まれます。ファイルをコピーする前にのみ、明確な確認を。)
-p
元のファイルの所有者、グループ、(setuidとsetgidのビットを含む)のアクセス許可、最終更新時刻、最終アクセス時刻を保持します。あなたが所有者またはグループ情報のコピーを作成した場合はエラー、setuidとsetgidのビットがクリアされます。(コピー操作は、ソースファイルへのアクセスであるため、さもないと、ソースファイルと最終アクセス時刻のコピーは、明らかに異なっています。)
-R
オブジェクトは、通常のファイルまたはディレクトリでない場合、再帰コピーディレクトリは、それに応じて正しく処理(したがって、コピー後のFIFOまたは特殊ファイルがまだFIFO型または適切な特殊なファイルです。)
-r
再帰的なコピーディレクトリ、オブジェクトが通常のファイルまたはディレクトリでない場合は、いくつかの処理を行い、その後に宣言されていません。(したがって、我々は許可し、-rオプションと-Rの同義語を行うことを奨励しています。しかし、GNUのバージョンのもののようなものを愚かな機能、 CPは 下記参照)(表示されるにも使用することができます。)

GNU詳細

一般的には、読み取りと書き込みのファイルは同じです。例外は下記参照--sparseオプション。

デフォルトでは、 `CP「ディレクトリをコピーしません(下記参照-r説明オプション)。

CPは、パラメータの場合:通常、次の例外を除いて、それ自体にファイルをコピーしませ--force --backupソースファイルを一緒に与えられている、としてファイルの目的通常のファイルへとポイント、CPは、バックアップファイルは普通ではありません生成されます。ちょうどその文の一般的な方法として、番号が付けられています。あなただけの既存のファイルがバックアップされたいが、ときに便利な、それを変更する必要はありません。

GNUオプション

-a、--archive
あなたがコピーした場合、可能な限り。ファイルの構造や性質を維持するために(ただし、ディレクトリ構造を維持していない)と等価である -dpR
-d、--no-逆参照
シンボリックリンクではなく、それが指すファイルをコピーし、中原ファイルのコピーとの間のハードリンクの保護などのシンボリックリンクをコピーします。
-f、--force
ファイルが存在するターゲットを削除します。(比較すると:以下、オリジナル翻訳不足している部分)
-i、--interactive
リマインダとして、既存のファイルを上書きするかどうか。
-l、--link
ハードリンクの代わりに、非ディレクトリのコピーを作成します。
-p、--preserve
元のファイルの所有者、グループ、権限、およびスケジュールの属性を保管してください。
-P、--parents
スラッシュと指定されたソースファイル名が宛先ファイルを構成しています。最後に与えた CPの パラメータは、既存のディレクトリの名前でなければなりません。たとえば、次のコマンドを実行します。
CPは/ B / C existing_dir --parents

欠落している中間ディレクトリを作成し、ファイル `/ B / C 'texisting_dirに(既存のディレクトリ)/ A / B / C' をコピーします。
-r
コピーディレクトリを再帰的に、彼らは通常のファイルであるかのように(つまり、FIFOとスペシャルファイルである)任意の非ディレクトリおよび非シンボリックリンクをコピーする同じように見える。これは、試みは、各ソースファイルのデータを読み出し、それを書くことを意味します無期限FIFOまたは/ dev / ttyのを読んだとき、先に。そのため、このオプションを使用して、CPは「完全に欠点である(、終了することができる。それはあなたがこのツリー(ディレクトリ)を知っていない場合ことを意味し)あなたは、-rを回避し、不明なデバイスファイルを開くには、-Rを使用する必要がスキャナは、未知の影響ハードウェア上で発生があるだろうと言う、コピーするために何を持っています
-R、--recursive
再帰的に(上記参照非ディレクトリを保持、ディレクトリをコピー -r )。
--sparse = WHEN
スパースファイル「包括`holes'-占有0バイト、それは任意の物理ブロックを取りません。システムは0読み取りとして、それらを呼び出す」などの多くのバイナリファイルを読むために、これはかなりのディスクを保存することができ、多くの0の連続したバイトを包括的。空間と速度。不履行の場合の下では、 CPは、 天然のソースファイル穴と疎関連する出力ファイルのようにインスピレーションを発見しました。

WHEN値は次のいずれかになります。

オート
デフォルトの動作:入力ファイルがまばらである場合、出力ファイルはまばらです。
常に
必ずファイルシステムが有用であるスパースファイルは、サポートされていない入力ファイルが、ファイルシステムが必要とする出力ファイル(スパースファイルをサポート)する場合、出力ファイルをスパースにします。
決して
出力ファイルをスパースにしないでください。このオプションのためのアプリケーションを見つける必要がある場合は、私たちに知らせてください。
-s、--symbolicリンク
代わりに、非ディレクトリのコピーのシンボリックリンクを生成します。絶対に( `/「スタート)、現在のディレクトリ内のファイルの目的を除きます。このオプションは、シンボリックリンクがシステムでサポートされていないときにすべてのソースファイル名がエラーメッセージによって引き起こされなければなりません。
-u、--update
非ディレクトリ(ファイル)をコピーせずに同じまたはより新しい修正時刻と目的地がある場合。
-v、--verbose
コピーする前に、ファイル名を印刷します。
-x、--oneファイルシステム
異なるファイルシステムからサブディレクトリをスキップします。

GNUバックアップオプション

以下のようなプログラムのGNU版のcpmvはLNインストールパッチは、カバー変更、またはバックアップファイルを生成する前に(ファイル)を破壊する。そのファイルは彼らが-Vオプションによって名前が付けられます。-bオプションで指定されます。一般的に、バックアップファイル名は、この接尾辞は、-Sで指定され、ソースファイル名の接尾辞です。

-b、--backup
バックアップカバレッジを生成し、削除します。
-S SUFFIX 、--suffix = SUFFIX
参加 SUFFIX(接尾辞) 各バックアップファイルにする。指定しない場合、使用 SIMPLE_BACKUP_SUFFIXの 環境変数を。でも場合 SIMPLE_BACKUP_SUFFIXが 設定されていない、デフォルト設定は「〜 `です。
-V METHOD 、--version-コントロール= METHOD
バックアップファイルに名前を付ける方法を指定します。 METHODが `番号を付けることができる「(or`のT」 )、`既存の「(or`ゼロ」)、または`決して「(or`シンプル」)。 指定しない場合、使用しない VERSION_CONTROLの 環境変数の値を場合 VERSION_CONTROLが 設定されていない場合、デフォルト設定のバックアップファイルの種類は、 `「既存れます。

このオプションは効果的なEmacsの変数`バージョン管理「を対応METHOD Sは(のみ略語を受け入れました):

トン
必ずバックアップの数を生成します。
nilに 既存の
すでにそれらを持っているファイルの番号付きバックアップ、他人の簡単なバックアップを作成します。
決して シンプル
簡単なバックアップの合計。

GNU標準オプション

- 助けて
印刷の使用して終了。
- バージョン
バージョン情報を出力して終了。
-
オプションのリストの末尾。

環境(パラメータ)

変数LANG、LC_ALL、LC_COLLATE、LC_CTYPEとLC_MESSAGESが通常の意味を持っている。GNUバージョンについては、変数SIMPLE_BACKUP_SUFFIXとVERSION_CONTROL制御バックアップファイルは、上記の説明と同じように。命名します。 

おすすめ

転載: www.cnblogs.com/fanweisheng/p/11077012.html