0
データパイプラインを使用してDynamo DBデータをS3に転送しています。 S3バケットではバックアップが取れますが、複数のファイルに分割されています。次のコマンドを実行し、私はシェルコマンドのアクティビティを使用し、単一のファイルにデータを取得するには:AWSデータパイプラインのShellCommandActivity
aws s3 cat #{myOutputS3Loc}/#{format(@scheduledStartTime,'YYYY-MM-dd')}/* > #{myRenamedFile}
これは#{myRenamedFile}
という名前の単一のファイルにS3フォルダに存在するすべてのファイルを連結する必要があります。しかし、私は、データパイプラインで、次のエラーが表示されます。
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters] To see help text, you can run: aws help aws <command> help aws <command> <subcommand> help aws: error: argument subcommand: Invalid choice, valid choices are: ls | website cp | mv rm | sync mb | rb
これはcat
は、シェルコマンドのアクティビティでサポートされていないか、何かが間違ってここに存在しているということですか?異なるファイルをS3自体の1つのファイルに結合する他の方法はありますか?
を標準出力にコピーされた場合、私は私のローカルマシンにファイルをCPにしようとしたあなたは
cp
に--recursive
オプションを指定して、単一のコマンドでこれを行うことができますが、--recursive
がサポートされていません 'AWS S3のcp#{myOutputS3Loc} /# {/ home/user/Desktop --reursive'がエラーになります。[Errno 13]権限が拒否されました: '/ home/user' – rightCoderあなたは持っていませんおそらく 'root'によって所有されている'/homeuser'に書き込む許可を与えます。 'chmod'を使って権限を変更するか、S3ファイルを'/tmp'にコピーしてみてください。 – helloV