If you want to use the console, follow the @Martin van Dam answer.
If you want to use a shell:
Step 1. Open google cloud shell
Step 2. Launch gcloud init and follow the process to connect to the cloud project to which bucket1 belongs.
Step 3. run gsutil cp -r gs://[bucket1]/* gs://[bucket2]
You made!
* Now there is a catch! If both blocks belong to the same project, these steps will work flawlessly. But in case both segments do not belong to the same project or the same google cloud account and the same google cloud account . This will not work. You need to fix the permissions.
If they belong to the same GCP account:
Go to " Storage >" Browser > "Select Recycle Bin"> "Options"> " Edit bucket permissions >" add member > insert a service account email id for the project that owns "bucket2"> install the "Storage" role. Storage Admin > Save. Then run gstuil cp .
If they belong to separate GCP accounts:
Go to " Storage >" Browser > "Select Recycle Bin"> "Options"> " Edit bucket permissions Recycle Bin"> " add member > insert the gmail id that owns the project that owns" bucket2 "> install the" Storage "role. Storage Admin > Save, then run gstuil cp .
source share