【发布时间】:2013-05-14 10:02:51
【问题描述】:
如何将文件从我正在远程访问的计算机传输回我当前所在的计算机?
谁能帮帮我?
这是我目前所知道的语法,
scp(文件名)(我不知道放什么在这里):(我电脑上的位置)
【问题讨论】:
标签: terminal command-line-arguments scp
如何将文件从我正在远程访问的计算机传输回我当前所在的计算机?
谁能帮帮我?
这是我目前所知道的语法,
scp(文件名)(我不知道放什么在这里):(我电脑上的位置)
【问题讨论】:
标签: terminal command-line-arguments scp
scp 实际上比乍一看更容易使用。
scp <from> <to>
<from> 或 <to> 可以是本地的或远程的。
远程文件的格式为user@host:path_on_remote
本地文件只是简单的路径:/path/to/my/file.txt
如果您手动执行此操作,您可能会发现不将文件 back 复制到您的办公室机器更容易,方法是从 localhost before 运行以下命令登录远程主机:
scp user@remotehost:/path/to/my/file/on/remote.txt /local/path/local.txt
如果你需要复制一个目录 - 正如已经提到的 - 你可以给 scp -r 选项。
登录到远程时,复制回来基本相同,但您需要在本地计算机上运行 ssh,这可能需要在本地路由器上进行端口转发。我倾向于发现在我的笔记本电脑上调用scp 到服务器更容易,而不是反过来。
【讨论】:
如果您的计算机可以访问 Internet,那么这个 - hacky - 应该可以工作;
scp (filename) `echo $SSH_CLIENT | awk '{print $1}'`:(location on my computer)
更简单的方法(始终有效)是从本地计算机上的新窗口执行 scp;
scp (remote computer):path/to/remote/file (location on my local computer)
remote computer 与您通常 ssh 到的地址相同。
例如,如果文件位于名为 remotecomputer.com 的远程计算机上,位于名为 important 的主目录的子目录中,并且文件名为 test.txt,则可以在本地计算机上发出此命令以复制将其复制到本地计算机上的当前目录;
scp remotecomputer.com:important/test.txt .
【讨论】:
bash 会话中一样执行制表符完成。我觉得这很有帮助,因为这意味着我不必为了复制路径而创建 ssh 会话。
带有pem文件(pem文件需要位于根目录下)
$ scp -i <pem.pem> <file_on_local> <user>@<remotehost>:/path/to/file
有凭据
$ scp <file_on_local> <user>@<remotehost>:/path/to/file
【讨论】:
【讨论】: