Linux,Unix或Mac OS X上的Google Compute Engine scp文件
时间:2020-01-09 10:38:46 来源:igfitidea点击:
Scp命令使用ssh在网络上的主机之间复制文件以进行数据传输。如何在Linux,OS X或类似Unix的系统上使用scp来促进使用Google Compute Engine虚拟机进行远程文件传输? 解决方法:您需要使用gcloudcompute命令在Google虚拟机实例与由OSX/Linux或类似Unix系统提供支持的本地计算机之间复制文件。
语法
将文件从本地系统复制到远程Google VM的基本语法如下:
gcloud compute copy-files local-file-name {instance-name-here}:/path/ --zone {zone-name-here}
基本语法如下,将文件从远程Google VM复制到本地系统
gcloud compute copy-files {instance-name-here}:/remote/path /local/dir/ --zone {zone-name-here} gcloud compute copy-files {instance-name-here}:/~filename /local/dir/ --zone {zone-name-here}
例子
要列出您的Google计算虚拟机,请执行:
$ gcloud compute instances list
要将本地/etc/hosts文件复制到us-central1-b区域中托管的名为instance-1的远程vm,请执行:
$ gcloud compute copy-files /etc/hosts Hyman@instance-1:~/ --zone us-central1-b
要将本地~/webapp /目录复制到位于us-central1-b区域中托管的名为instance-1的远程虚拟机,请执行:
$ gcloud compute copy-files ~/webapp/ nginx@instance-1:/var/www/nginx/ --zone us-central1-b
要从位于us-central1-b区域中托管的名为instance-1的远程vm复制远程/foo /目录,请执行:
$ gcloud compute copy-files USER@instance-1:/foo/ ~/backups/ --zone us-central1-b
要从位于us-central1-b区域中托管的名为instance-1的远程vm复制远程文件~/db.conf.py,请执行:
$ gcloud compute copy-files USER@instance-1:~/db.conf.py $HOME/data/ --zone us-central1-b
选项
您可以传递以下选项:
--dry-run : If provided, prints the command that would be run to standard out instead of executing it. --plain : Suppresses the automatic addition of ssh(1)/scp(1) flags. This flag is useful if you want to take care of authentication yourself or re-enable strict host checking. --ssh-key-file SSH_KEY_FILE : The path to the SSH key file. By default, this is ~/.ssh/google_compute_engine. --zone ZONE : The zone of the instance to copy files to/from. If omitted, you will be prompted to select a zone.