0

1つのドライブに異なるディレクトリにバックアップファイルがあります。これらのディレクトリにあるファイルは最大800GBほどの大きさにすることができます。だから、私はS3にファイルをアップロード/同期する一連のスクリプトを含むバッチファイルを持っています。AWS S3、アップロード後にローカルディレクトリからファイルを削除する

は、以下の例を参照してください:

aws s3 sync R:\DB_Backups3\System s3://usa-daily/System/ --exclude "*" --include "*/*/Diff/*"

アップロード時間が異なるが、これまでのように良いことができます。

私はスクリプトを編集するか、ファイルがアップロードされていることをs3バケットで確認する新しいファイルを作成するにはどうすればよいですか?アップロードされた場合のみローカルドライブから削除しますドライブに?

(理想的には、各ファイルをチェックします)

私はAWSのS3に精通していないよ、またはそれを行うことができ、AWS CLIコマンド?私が自分自身を明確にしたのか、それとももっと詳細が必要なのかを教えてください。

ご協力いただきますようお願い申し上げます。

+0

大きなファイルがあるので、膨大な量のファイルがないと言っても過言ではありませんか? (ファイル名をループするのが実現できるように) –

+0

@Dennis Jaheruddinではなく、1つのディレクトリに40個のファイルを持つことができます.10個ありますが、それぞれのファイルサイズは300GB以上ですが、ファイル名バックアップのために毎回変更されます。 – Kelvin

答えて

0

syncは、対応するローカルコピーを削除するとS3のファイルを削除するため、使用できません。

代わりにmvを使用してください。は、のローカルファイルをS3に移動します。したがって、コマンドが成功すると、ローカルファイルはS3にアップロードされ、削除されます。コマンドが失敗すると、ローカルファイルはディスク上に安全に残ります。文書hereを確認してください。

しかし、mvはファイルレベルで動作しますが、syncはディレクトリ全体を見ることができます。したがって、ディレクトリ内のすべてのファイルを反復処理するためのコードを記述し、それぞれに1つずつmvを呼び出す必要があります。

+0

それをありがとう、私はmvを検討していたが、私はそれが私が欲しかったものにかなりフィットしていたとは思わない、異なるディレクトリの何百ものファイルのディレクトリレベルでこれを必要とするので、 1つのスクリプトでmvとの同期を試してみてください。 – Kelvin

+0

は 'sync'を使用しません。ちょうどmv。ディレクトリ内の何百ものファイルは重要ではありません - あなたのスクリプトはアップロード時にファイルを削除し続けるので、データの損失はありません。 –

+0

大丈夫です。テストとしてダミーファイルをいくつか試してみます。たとえば、特定のファイルがアップロードされなかった場合、応答を返すか、ログエラーが発生する可能性がありますか?ファイルがアップロードされている間に接続が失われたとしましょう。それを追跡して何が起こったのか分かりますか? – Kelvin

関連する問題