Спробуйте використовувати gcloud compute scp
:
gcloud compute scp
[[USER@]INSTANCE:]SRC [[[USER@]INSTANCE:]SRC …]
[[USER@]INSTANCE:]DEST
[--compress] [--dry-run] [--force-key-file-overwrite]
[--plain] [--port=PORT] [--recurse] [--scp-flag=SCP_FLAG]
[--ssh-key-file=SSH_KEY_FILE]
[--strict-host-key-checking=STRICT_HOST_KEY_CHECKING]
[--zone=ZONE]
[GCLOUD_WIDE_FLAG …]
[-h]
наприклад,
$ gcloud compute scp \
my-instance-1:~/file-1 \
my-instance-2:~/file-2 \
~/my-destination \
--zone us-central2-a
В якості альтернативи ви також можете використовувати (не gcloud
) sftp
або scp
; дивіться цю відповідь ТА для детальної інформації про аргументи командного рядка, які потрібно вказати, які я цитую тут для простоти:
sftp -o IdentityFile ~/.ssh/google_compute_engine user@host
Щоб використовувати будь-який інший інструмент SFTP, аналогічно надайте йому шлях до приватного ключа SSH, і він зможе підключитися до екземпляра. Однак у випадку з gcloud
цим він може самостійно вирішити ім'я хоста для загальнодоступних IP; для всіх інших інструментів вам потрібно буде знайти IP вручну та безпосередньо вказати IP-адресу.