質問: 少しややこしい質問になりますが、私が行おうとしていることが現実的に可能かどうか、可能な場合はその方法をご教授頂ければと思います。 Amazon S3に保存されたバケット単位で一括、または選択したファイルを複数ダウンロードしたいと考えています。しかし、現状ではAmazon S3の管理画面からではバケット単位でのダウンロードや、複数ファイルを選択してダウンロードは出来ません。コマンドで全ファイルをローカルに落とすことが出来るのは知っているのですが、今回はコマンドも叩けない人でも一括でダウンロードが出来る方法を探しています。 そこで考えたのが、Amazon S3と同期出来て、一括ダウンロードや複数ダウンロードが出来るオンラインストレージサービスがないかと考えました。理想のオンラインストレージは ・Amazon S3のバケット単位で同期が出来る(指定したバケット以外は同期出来ない) ・指定したバケットの全ファイルが表示され、バケット全てもしくは選択したファイルをローカルにダウンロードすることが出来る ・オンラインストレージからS3に対して保存や削除は出来ない(出来ない制御ができる)オンラインストレージからはあくまで同期された画像のダウンロードのみ可能 ・無料じゃなくてもいい...セキュリティがしっかりしているほうが良い。アカウント単位でもいいし、ストレージ単位でもいい。ただ、バケットの数だけユーザーを作成することになる。 ・出来ればWeb上で完結するほうがいい。インストールタイプではなく、URLとアイパスを渡したら 同期されたファイルが表示され、一括もしくは選択したファイルをダウンロードすることが出来る。 上記が希望の条件です。 フォルダ単位のダウンロードにはオンラインストレージで出来ると思うのですが、s3と同期させることが出来たり、色々と考えている制御まで考えるとなかなか理想のオンラインストレージサービスが見つかりません。 もしよろしければ、上記の動作が出来るオンラインストレージサービスをご教授頂けないでしょうか? よろしくお願いします。 ※追記 シチュエーションについてもう少し詳しく書きます。 ・現在サービスとして依頼を受けたクライアントにwebからファイルをアップロードし、アップロードしたファイルをamazon S3に格納するシステムが存在 ・管理画面から指定のバケットに格納されているファイルを全件確認することが可能。クライアントにアイパスを発行してログインしてもらう。1バケットに格納されているファイルを選択してダウンロードすることが出来る。管理画面から指定した1ファイルをダウンロードすることが出来る。 これが現状あるシステムです。この管理画面を辞めて、s3とバケット単位で同期することが出来て一括でダウンロードが出来るサービスがあれば、s3と同期してそのオンラインストレージのアイパスをクライアントに渡せば良いのではないかと考えました。
回答: > > 今回はコマンドも叩けない人でも一括でダウンロードが出来る方法 > > > どのようなシチュエーションを想像しているのかわかりませんが、「システムバックアップやその他必要になった場合に、特定のフォルダをコピーしてくる」というような状況でしたら、「コマンドをラッピングしたシェルスクリプトやバッチファイルを作っておいて、ショートカットのクリックだけで実行できるようにする」というのが、いちばん手っ取り早いのではないかと思います。 「不特定のバケツに対して実行したい」とか、前提が違うようでしたらお知らせください。