After all the tough works of migration etc. Just realise that If need to serve the content using CNAME (e.g media.abc.com). The bucket name need to start with media.abc.com/S3/a
Probably a later version of the AWS CLI toolkit provided the mv option.
mv
$ aws --version aws-cli/1.15.30 Python/3.6.5 Darwin/17.6.0 botocore/1.10.30
I'm renaming buckets using the following command:
aws s3 mv s3://old-bucket s3://new-bucket --recursive