Linux cp コマンド
Linux の cp コマンドは、copy コマンドの略です。 cp コマンドは、ファイルとディレクトリをすばやくコピーするのに役立ちます。これは広く使用されているコマンドであり、基本的なコピー要件だけでなく、より複雑なコピー要件にも対応するいくつかのオプションが付属しています。
Linux cp コマンドを理解することは、Linux ツールセットに不可欠なスキルです。サイバー セキュリティで DevOps または Linux 管理者として働いている場合、おそらくこのコマンドを日常的に使用するでしょう。最も重要なコマンドを紹介します。
まず、Linux cp を確認します。 コマンド構文を調べてから、考えられるさまざまなオプションを調べてください。
Linux cp コマンドの基本構文
このコマンドを使用するには、ソースと、ソースが宛先にコピーされる宛先を指定する必要があります。
cp [options] source destination
同じディレクトリ内のファイルを新しい名前で新しいファイルにコピーします
次のコマンドを使用して、Sample.txt を Sample_copy.txt にコピーできます:
cp Sample.txt Sample_copy.txt
現在のディレクトリから別のディレクトリにファイルをコピー:
以下に示すように、現在のディレクトリから別の /tmp ディレクトリにファイルをコピーできます:
cp Sample.txt /tmp
Linux cp コマンドを使用して、ファイルを別のディレクトリに新しいファイル名でコピーします:
上記の例では、Sample.txt が同じ名前の別のディレクトリにコピーされます。ただし、同じコマンドを変更して、ファイルを新しいディレクトリにコピーし、新しいファイル名を付けることができます。そのような例の 1 つを以下に示します:
cp Sample.txt /tmp/Sample_copy.txt
ここで、この Linux cp コマンドは、Sample.txt と同じ内容の新しいファイル Sample_copy.txt を作成します。
Linux cp オプション
Linux cp コマンドで使用できるオプションは複数あります。これらのオプションのリストは、マニュアル ページから確認できます。これは、以下のいわゆる man コマンドを使用して実行できます。
man cp
出力の一部として、以下に示すように cp コマンドの手動入力の完全なリストが表示されます:
オプションを表示するだけの場合は、次のコマンドも使用できます:
cp – help
以下に示す出力は、Linux cp コマンドに関連するすべてのオプションを提供します。
cp コマンドのバージョンは、次のコマンドを使用して確認できます:
cp – version
一般的に使用されるオプションは次のとおりです。
<オール>1 つのコピー コマンドで、複数のオプションを使用できます。そのような例の 1 つを以下に示します:
cp -vi /tmp/linux_cp /home/usr/linux_copy
複数のファイルをコピー
1 つのファイルの代わりに、複数のファイルを特定の場所にコピーすることもできます。以下の例では、Sample.txt と Sample_copy.txt の 2 つのファイルが /tmp にコピーされます
cp -vi /tmp/linux_cp /home/usr/linux_copy
同様に、特定のディレクトリの場所にコピーするファイルをさらに追加できます。
同じ拡張子の複数のファイルをコピー
Linux cp コマンドを使用すると、単一のコマンドを使用して、同じ拡張子を持つすべてのファイルをすばやくコピーできます。すべての .sh ファイルを 1 つのディレクトリ /tmp にコピーする必要がある場合は、次のコマンドを使用できます:
cp *.sh /tmp
同様に、他のファイル拡張子もコピーできます。 Sample_1.sh、Sample_22.sh、Sample_32.sh など、コピーするファイルのパターンがある場合は、以下に示すように、コピーを 1 つのコマンドに統合できます。
cp Sample*.sh /tmp
単一のディレクトリ コピー
cp コマンドを使用して、1 つのディレクトリを直接コピーできます。テスト ディレクトリを /home/usr/linux_cp ディレクトリにコピーする場合は、次のコマンドを使用できます:
cp test /home/usr/linux_cp
現在のディレクトリからすべてのファイルをコピーします
現在の作業ディレクトリから新しいディレクトリにすべてのファイルをコピーするには、以下を試してください:
cp * /home/usr/linux_cp
ディレクトリとサブディレクトリの再帰的コピー
ディレクトリ内に存在するすべてのディレクトリとファイルを再帰的にコピーするには、cp コマンドの使用中に -R オプションを使用する必要があります。ディレクトリ tmp をディレクトリ linux_cp にコピーする場合は、次のコマンドを使用できます:
cp -R tmp linux_cp
別のディレクトリの場所を指定する必要がある場合は、上記の Linux cp コマンドでディレクトリの絶対パスを指定することもできます。
あるディレクトリから別のディレクトリにすべてのファイルをコピーする
すべてのファイルをあるディレクトリから別のディレクトリにコピーするには、 -R オプションを使用してすべてのファイルを再帰的にコピーする必要があります。このようなコピー コマンドの例を次に示します。
cp -R /tmp/linux_cp/* /home/usr/linux_copy
この Linux cp コマンドは、すべてのファイルとディレクトリを /tmp/linux_cp から /home/usr/linux_copy にコピーします
結論
Linux のコピー コマンドは、シェルでの作業中に広く使用されています。 Linux cp コマンドを使用すると、大きなディレクトリやファイルをすばやくコピーし、完全なディレクトリ構造を保持できます。これに加えて、Linux cp コマンドは、上で見たように複数のオプションをサポートしています。 Linux cp コマンドを知ることは、Linux レポート作成に不可欠なスキルです。