2021年8月2日月曜日

S3のバケットからオブジェクトを移動しつつリネーム

aws cliで、S3のバケットから全てのオブジェクトを移動します。まとめて移動することはできないので、
shell scriptでforループを使います。


下記では、bucket01からbucket02へregex でオブジェクト名を変更しつつ移動します。

rename_and_move_s3_bucket.sh
list_objects=$(aws s3 ls s3://bucket01 | awk '{print $4}')

for old_object_name in $list_objects; do
	new_object_name=$(...) # mv or rename
	aws s3 mv s3://bucket01/$old_object_name s3://bucket02/$new_object_name
done

2 件のコメント: