Articles

Linuxでファイルとディレクトリをコピーする方法

ファイルとディレクトリのコピーは、コマンドラインで作業するときに実行する最も一般的 Linuxにはファイルをコピーするためのコマンドがいくつかあり、cprsynccprsyncを使用するのが一般的です。

ファイルとディレクトリをコピーできるようにするには、少なくともソースファイルに対する読み取り権限と宛先ディレクトリに対する書き込み権限linuxおよびUnixオペレーティングシステムでは、cpコマンドがファイルおよびディレクトリのコピーに使用されます。

最も単純なユースケースは、現在の作業ディレクトリにファイルをコピーすることです。 たとえば、file.txtfile_backup.txtという名前のファイルにコピーするには、次のコマンドを実行します:p>

cp file.txt file_backup.txt

宛先ファイルが存在する場合、上書きされます。 ファイルを上書きする前に確認プロンプトを表示するには、-iオプションを使用します。

cp -i file.txt file_backup.txt

デフォルトでは、cp-pオプションを使用します。

cp -p file.txt file_backup.txt

便利な別のオプションは-vです。 このオプションを使用すると、コマンドは何が行われているかを出力します。

cp -v file.txt file_backup.txt
'file.txt' -> 'file_backup.txt'

ファイルをディレクトリにコピーする#

ファイルをディレクトリにコピーするには、ディレクトリへの絶対パスまたは相対パスを指定します。 コピー先ディレクトリが省略されると、ファイルは現在のディレクトリにコピーされます。次の例では、ファイルfile.txt/backupディレクトリにコピーしています:p>

cp file.txt /backup

宛先としてディレクトリ名のみを指定すると、コピーされたファイルは元のファイルと同じ名前になります。

別の名前でファイルをコピーする場合は、目的のファイル名を指定する必要があります。

cp file.txt /backup/new_file.txt

上記のコマンドは、new_file.txtとして指定されたディレクトリにファイルをコピーします。

複数のファイルをコピーする#

複数のファイルとディレクトリを一度にコピーするには、ソースファイルとディレクトリの名前を指定し、最後の引:

cp file.txt dir file1.txt file2.txt dir1

複数のファイルをコピーする場合、コピー先はディレクトリでなければなりません。

cp.png/backupディレクトリにコピーするには、次のように使用します。

cp *.png /backup

cpコマンド#でディレクトリをコピーする

すべてのファイルとサブディレクトリを含むディレクトリをコピーするには、/backup/backupディレクトリをコピーするには、

/backupディレクトリをコピーするには、/backupディレクトリをコピーするには、以下を使用します。-Rまたは-rPicturesPictures_backupにコピーしています。

cp -R Pictures Pictures_backup

上記のコマンドは、宛先ディレクトリを作成し、すべてのファイ

コピー先ディレクトリが既に存在する場合、コピー元ディレクトリ自体とその内容がコピー先ディレクトリにコピーされます。 ファイルとサブディレクトリのみをコピーし、ターゲットディレクトリはコピーしないには、-Tオプションを使用します:p>

cp -RT Pictures Pictures_backup

ファイルのコピー時に使用されるオプションは、ディレクトリのコピー時にも使用できます。 主な違いは、ディレクトリをコピーするときに、-Rオプションを使用する必要があることです。

rsyncコマンドでファイルやディレクトリをコピーする#

rsyncは、二つの場所の間でファイルやディレクトリを同期する高速で汎用性の高い これは、ローカルおよびリモートの場所にファイルをコピーするために使用することができます。

rsyncその動作のあらゆる側面を制御する多くのオプションが含まれています

最も有用なオプションは-aディレクトリを再帰的にコピーし、特別なデバイスを転送し、ブロックし、シンボリックリンク、変更時刻、グループ、所有権、および権限を保持するです。

ある場所から別の場所に単一のファイルをコピーするには、次のコマンドを実行します。

rsync -a file.txt file_backup.txt

宛先ファイルが存在する場合、rsync

同じコマンドを使用してディレクトリをコピーすることができます:

rsync -a /var/www/public_html/ /var/www/public_html_backup/

rsync/rsync/宛先とソースの両方に。

rsyncの詳細については、次の記事を確認してください。

  • ローカルおよびリモートのデータ転送および同期にRsyncを使用する方法
  • Rsyncでファイルcpおよびrsyncユーティリティ。