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

Linuxユーザーは、Linuxcpコマンドに精通している必要があります。 これは、あるディレクトリから別のディレクトリにファイルをコピーするために使用されます。

このチュートリアルでは、1つのコマンドでファイルを複数のディレクトリにコピーする方法について説明します。

デフォルトでは、1つのコマンドでファイルを単一の宛先ディレクトリにコピーできます。 たとえば、ファイルtecadmin.txtをホームディレクトリから2つの異なるディレクトリにコピーし、次のようなコマンドを使用します。

cp -v ~/tecadmin.txt  /backup/dir1/  cp -v ~/tecadmin.txt  /backup/dir2/ 

ここで、次のコマンドを使用して、1つのコマンドで同じファイルを両方の宛先ディレクトリにコピーします。 ここでは、echoコマンドに続いて宛先ディレクトリ名を使用します。 次に、結果をxargsコマンドにパイプします。xargsコマンドは、ディレクトリ名を入力として受け取り、それをcpコマンドに渡します。

echo /backup/dir1/ /backup/dir2/ | xargs -n 1 cp -v ~/tecadmin.txt 

次に、ソースファイルが両方の宛先ディレクトリにコピーされていることを確認します。 lsコマンドを使用して、両方の場所にあるファイルを一覧表示します。

ls -l /backup/dir1/tecadmin.txt  ls -l /backup/dir2/tecadmin.txt 

1つのコマンドで同じファイルが両方の宛先にコピーされることがわかります。

ファイルを2〜3のディレクトリにコピーするときに、複数のコマンドを使用して簡単にコピーできます。 ただし、これを一度に多数のディレクトリにコピーする必要がある場合は考えてみてください。 たとえば、多数のアカウントを持つWHM / cPanelサーバーがあり、各アカウントのpublic_htmlディレクトリにファイルを配置したいとします。 これは、次のように1つのコマンドで実行できます。

echo /home/*/public_html/ | xargs -n 1 cp -v ~/tecadmin.txt  [output] '/root/tecadmin.txt' -> '/home/user1/public_html/tecadmin.txt' '/root/tecadmin.txt' -> '/home/rahul/public_html/tecadmin.txt'

このチュートリアルが、1つのコマンドでファイルを複数のディレクトリにコピーすることを理解するのに役立つことを願っています。

Hope this helps!

Source link