我需要从服务器下载文件到我的桌面。 (UBUNTU 10.04)我没有对服务器的 Web 访问权限,只有 ssh。
如果有帮助,我的操作系统是 Mac OS X 和 iTerm 2 作为终端。
在您的终端中,键入:
scp [email protected]:foobar.txt /local/dir
根据需要替换用户名,主机,远程文件名和本地目录。
如果要访问 EC2(或其他需要使用私钥进行身份验证的服务),请使用-i
选项:
scp -i key_file.pem [email protected]:/remote/dir/foobar.txt /local/dir
您可以使用scp
命令执行此操作。 scp
使用 SSH 协议通过扩展cp
的语法来跨系统复制文件。
将其他系统中的内容复制到此系统:
scp username@hostname:/path/to/remote/file /path/to/local/file
将此系统中的内容复制到其他系统:
scp /path/to/local/file username@hostname:/path/to/remote/file
将某些东西从某个系统复制到其他系统:
scp username1@hostname1:/path/to/file username2@hostname2:/path/to/other/file
scp 肯定是要走的路,但为了完整起见,你也可以这样做:
$ ssh host 'cat /path/on/remote' > /path/on/local
要么
$ cat /path/on/local | ssh host 'cat > /path/on/remote'
注意,这是 UUOC,但是< /path/on/local ssh host 'cat > /path'
可能会导致不必要的混淆。
并在两台主机之间代理:
$ ssh host1 'cat /path/on/host1' | ssh host2 'cat > /path/on/host2'