フォルダ全体を同じサーバー上の別の場所にコピーする

フォルダ全体を同じサーバー上の別の場所にコピーする

WordPressアップロードフォルダをメインサイトから開発サイトにバックアップしたいです。

私は次のコードを試してみると思いました。

cp -urp /home/my_site/public_html/wp-content/uploads/* /home/my_site/public_html/dev/wp-content/uploads

ダメージを与える前に、これが正しいことを確認するか、この作業をどのように進めるべきかを提案できますか?

答え1

両方のフォルダを同期したままにしたい場合は、このコマンドを使用するのはcp間違った方法です。コピーのみが作成されます。つまり、コマンドの実行時にのみ同期されます。

目的によって異なりますが、両方のフォルダを同期するには、rsynccronjobでコマンドを使用します。

とにかく手動で実行するには、コマンドは次のようになります。ほぼまあ、少しだけ修正してください。

cp -urp /home/my_site/public_html/wp-content/uploads/ /home/my_site/public_html/dev/wp-content/

答え2

お客様のcp注文と表示は、明記されていないが暗黙的に想定される要件を除き、指定された要件を満たしているようです。ソースフォルダからファイルを削除すると、CPコマンドはターゲットフォルダに対して何もしません。これはおそらく欲しいものです。 「同期」という言葉は、両方のフォルダが同じであることを望むことを意味します。つまり、ファイルの「分離された」コピーを維持することは、これらの暗黙の要件を満たすことができないことを意味します。

これを行うことを検討してくださいrsync。 2つの場所間でファイルを同期するように特別に設計されたさまざまなオプションと機能があります。以下はあなたのニーズによく合うことができます。

rsync -avhd /source /target

関連情報