如何将文件从远程服务器复制到本地计算机?

时间:2015-03-05 02:32:25

标签: linux ubuntu scp cp

在我的终端shell中,我ssh到远程服务器,我cd到我想要的目录。现在,在此目录中,有一个名为table的文件,我想将其复制到本地计算机/home/me/Desktop。我怎么能这样做?

我尝试了scp table /home/me/Desktop但是它没有关于这样的文件或目录的错误。有谁知道怎么做?

由于

4 个答案:

答案 0 :(得分:56)

例如,您的远程主机是example.com,远程登录名是user1:

scp user1@example.com:/path/to/file /path/to/store/file

答案 1 :(得分:4)

当您使用scp时,您必须告诉您要复制文件的主机名和IP地址。例如,如果您在远程主机并且想要将文件传输到PC,则可以使用以下内容:

scp -P[portnumber] myfile_at_remote_host [user]@[your_ip_address]:/your/path/

示例:

scp -P22表fake_user@111.111.111.11:/ home / me / Desktop /

另一方面,如果你实际上在你的机器上,你可以使用这样的东西:

scp -P[portnumber] [remote_login]@[remote's_ip_address]:/remote/path/myfile_at_remote_host /your/path/

示例:

scp -P22 [fake_user] @ 222.222.222.222:/ remote / path / table / home / me / Desktop /

答案 2 :(得分:4)

scp操作与ssh登录分开。您将需要发出类似于以下命令的ssh命令,假设jdoe是您登录远程系统的帐户,并且远程系统是example.com:

scp jdoe@example.com:/somedir/table /home/me/Desktop/.

从/ home / me / Desktop所在系统发出的scp命令后跟远程服务器上帐户的userid。然后添加":"后跟远程服务器上的目录路径和文件名,例如/ somedir / table。然后添加一个空格以及要将文件复制到的位置。如果您希望文件在客户端系统上具有相同的名称,则可以使用句点表示,即"。"在目录路径的末尾;如果你想要一个不同的名字,你可以使用/ home / me / Desktop / newname。如果您使用非标准端口进行SSH连接,则需要使用" -P n"来指定该端口。 (大写P),其中" n"是端口号。标准端口是22,如果您没有为SSH连接指定它,那么您将不再需要它。

答案 3 :(得分:1)

我建议使用sftp,使用此命令sftp -oPort=7777 user@host其中-oPort是ssh的自定义端口号,如果你将其更改为7777,那么你可以使用-oPort,否则如果只使用端口22然后普通sftp user@host要求输入密码,然后你可以登录,你可以使用cd /home/user导航到所需的位置然后一个简单的命令get table你可以下载它,如果你想要下载目录/文件夹get -r someDirectory即可。如果您希望文件权限也存在,则get -Pr someDirectory。 要上传到远程更改,请输入以上命令。