如何通过终端将文件复制到另一台机器?


39

我有通过VMPlayer运行的Ubuntu 10.04。我还有另一台机器(Asus RT-N16路由器)。我可以使用telnet连接到路由器,并查看其文件系统。如何将文件从本地计算机(文件为/ home / user / helloworld-c)复制到路由器(文件夹* / tmp / mnt / discb_1 *)?

Answers:


76

是否可以通过SSH连接?也许您应该考虑“ scp”实用性。非常简单,请看手册页

man scp

基本用法:

scp remote_user@remote_host:/path/to/remote/file /path/to/local/file

反之亦然:

scp /path/to/local/file remote_user@remote_host:/path/to/remote/file

谢谢,它有效!如何对整个文件夹进行同样的处理?
2011年

4
使用“ -r”选项:scp -r user @ host:/ path / file / path / local。请将答案标记为已接受(如果可行)。
Pavel S.

只需查看scp的手册页即可(在终端中,键入“ man scp”)。还有很多其他选择。
Pavel S.

我怎么也可以复制带有文件的文件夹,此命令仅复制文件
amit_game 2015年

@LA_,您可以压缩所有文件。
Silvio Delgado 2015年

12

要将非空目录从远程计算机复制到您的计算机,请执行以下操作:

scp -r remoteusername@192.168.1.56:/home/vrc/Desktop/www /home/ourusername/Desktop

要复制文件,只需排除以下-r选项:

scp remoteusername@192.168.1.56:/home/vrc/Desktop/file1 /home/ourusername/Desktop

要从您的计算机复制到远程计算机,只需在上一个示例中切换位置和目的地。有关更多信息,请执行man scp


10

您可以执行的另一种方法:(通过pem文件)

如果要使用pem文件并且您是ROOT用户:

1. root用户:

sudo scp -i ~/servers/your-key.pem ~/your-local-source-path/your-local-file.txt root@00.00.00.11:/you-server-destination-path/

注意:服务器IP和目标路径之间的冒号。

如果我无法使用root用户身份登录,请参阅步骤2。

2.标准用户:

假设您是ubuntu具有标准特权的用户。

sudo scp -i ~/servers/your-key.pem ~/your-local-source-path/your-local-file.txt ubuntu@00.00.00.11:/home/ubuntu/

这会将文件放在主目录中。然后以标准用户身份登录到远程服务器。并做

sudo su

您将切换到root用户。然后将文件移到目标目录

mv /home/ubuntu/your-local-file.txt /you-server-destination-path/your-local-file.txt

我经常遇到这个问题,因此分享了另一种完成工作的方法!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.