本記事について
AWS S3 へ cp コマンドを使用してローカルの csv ファイルをアップロードする際の出来事。
メタ情報を付与するための S3 コマンドについて調べてもいい感じの記事が見つからない!!
なので対応したときのメモ書きを残します。
そもそも AWS CLI とは?
ターミナル等のコマンドラインツールから AWS を操作するためのインターフェースです。
AWS CLI を利用して、S3 上の対象バケットにあるオブジェクトを移動・削除したり、ローカル にあるファイルをアップロード、逆に S3 から ローカル へ ダウンロード することができます。
【本題】AWS S3 コマンドでコピー時にメタ情報を付与する方法
※ S3 コマンド実行はWindowsOSを想定
コマンドプロンプト
rem 送信日をセット
>SET DATE=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%
rem メタ情報設定 DドライブのTEST.csvをS3バケット「send-s3」にセットする場合
rem S3 Metadata KEY ⇒ meta_info
rem メタ情報は①テストコード②送信日の2つ
>SET meta=meta_info='{\"TestCd\":[\"123456\"],\"SendDate\":\"%DATE%\"}'
>SET LOCAL_DIR=D:\TEST.csv
>SET AWS_DIR=s3://send-s3/TEST/
rem AWS送信 「--sse AES256」暗号化方法の指定 「--metadata」メタ情報付与
>aws s3 cp --sse AES256 %LOCAL_DIR% %AWS_DIR% --metadata %meta%