Linux(MAC) SSH远程文件/目录传输命令scp

  相信各位VPSer在使用VPS时会经常在不同VPS间互相备份数据或者转移数据,大部分情况下VPS上都已经安装了Nginx或者类似的web server,直接将要传输的文件放到web server的目录,然后在目标机器上执行:wget http://www.vpser.net/testfile.zip 就行了。当VPS上没有安装web server和ftp server的时候或感觉上面的方法比较麻烦,那么用scp命令就会排上用场。

一、scp是什么?

scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。

二、scp有什么用?

1、我们需要获得远程服务器上的某个文件,远程服务器既没有配置ftp服务器,没有开启web服务器,也没有做共享,无法通过常规途径获得文件时,只需要通过scp命令便可轻松的达到目的。

2、我们需要将本机上的文件上传到远程服务器上,远程服务器没有开启ftp服务器或共享,无法通过常规途径上传是,只需要通过scp命令便可以轻松的达到目的。

三、scp使用方法

1、获取远程服务器上的文件

scp -P 2222 root@www.vpser.net:/root/lnmp0.4.tar.gz /home/lnmp0.4.tar.gz

上端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。 root@www.vpser.net 表示使用root用户登录远程服务器www.vpser.net,:/root/lnmp0.4.tar.gz 表示远程服务器上的文件,最后面的/home/lnmp0.4.tar.gz表示保存在本地上的路径和文件名。

2、获取远程服务器上的目录

scp -P 2222 -r root@www.vpser.net:/root/lnmp0.4/ /home/lnmp0.4/

上端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。-r 参数表示递归复制(即复制该目录下面的文件和目录);root@www.vpser.net 表示使用root用户登录远程服务器www.vpser.net,:/root/lnmp0.4/ 表示远程服务器上的目录,最后面的/home/lnmp0.4/表示保存在本地上的路径。

3、将本地文件上传到服务器上

scp -P 2222 /home/lnmp0.4.tar.gz root@www.vpser.net:/root/lnmp0.4.tar.gz

上端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。 /home/lnmp0.4.tar.gz表示本地上准备上传文件的路径和文件名。root@www.vpser.net 表示使用root用户登录远程服务器www.vpser.net,:/root/lnmp0.4.tar.gz 表示保存在远程服务器上目录和文件名。

4、将本地目录上传到服务器上

scp -P 2222 -r /home/lnmp0.4/ root@www.vpser.net:/root/lnmp0.4/

上 端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。-r 参数表示递归复制(即复制该目录下面的文件和目录);/home/lnmp0.4/表示准备要上传的目录,root@www.vpser.net 表示使用root用户登录远程服务器www.vpser.net,:/root/lnmp0.4/ 表示保存在远程服务器上的目录位置。

5、可能有用的几个参数 :

-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .

-C 使能压缩选项 .

-4 强行使用 IPV4 地址 .

-6 强行使用 IPV6 地址 .

来源:http://www.ylzx8.cn/linux/linux-unix/239964.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要将文件从本地电脑传输Linux 终端,可以使用以下方法: 1. SCPSCP 是一种通过 SSH 连接在本地电脑和远程 Linux 终端之间传输文件命令。可以使用以下命令将本地文件传输远程 Linux 终端: ``` scp /path/to/local/file username@remote:/path/to/remote/directory ``` 其中,`/path/to/local/file` 是本地文件路径,`username` 是远程 Linux 终端的用户名,`remote` 是远程 Linux 终端的 IP 地址或域名,`/path/to/remote/directory` 是远程 Linux 终端的目标目录。 2. SFTP:SFTP 是一种基于 SSH 的安全文件传输协议,它提供了交互式文件传输功能。可以使用以下命令在 SFTP 中传输文件: ``` sftp username@remote put /path/to/local/file /path/to/remote/directory ``` 其中,`username` 是远程 Linux 终端的用户名,`remote` 是远程 Linux 终端的 IP 地址或域名,`/path/to/local/file` 是本地文件路径,`/path/to/remote/directory` 是远程 Linux 终端的目标目录。 3. FTP:FTP 是一种常见的文件传输协议,可以使用 FTP 客户端连接到远程 Linux 终端并传输文件。需要在远程 Linux 终端上安装并配置 FTP 服务器,然后在本地电脑上使用 FTP 客户端进行连接和文件传输。 ### 回答2: 电脑终端通过网络连接给Linux传输文件的过程可以通过以下步骤解释: 1. 确保电脑终端和Linux设备在同一局域网内,或者通过互联网连接。 2. 在电脑终端上打开终端应用程序,如Windows中的命令提示符或PowerShell,或者MacLinux中的终端。 3. 使用scp命令传输文件scp是一个安全复制命令,它可以在计算机网络上安全地传输文件。 4. 在终端中输入scp命令的基本语法:scp [参数] [来源文件路径] [目标文件路径] 5. [参数]是可选的,可以使用一些选项来自定义传输。例如,-r选项可以递归地传输目录和子目录中的文件。 6. [来源文件路径]是要传输文件的路径。可以是文件名,也可以是包含文件名的完整路径。 7. [目标文件路径]是文件Linux设备上的目标路径。可以是目标文件夹的路径,也可以是带有文件名的完整路径。 8. 按下回车键后,电脑终端将开始传输文件传输的过程中,会显示传输进度和相关信息。 9. 传输完成后,电脑终端会显示传输耗时和相关信息,表明文件已成功传输Linux设备上的目标路径。 总之,通过在电脑终端上使用scp命令,我们可以在电脑终端和Linux设备之间安全地传输文件。这种方法可以用于备份文件、分发软件或在不同设备之间共享文件等场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值