scp传输文件_Linux之间传输文件使用ssh加密隧道

请关注本头条号,每天坚持更新原创干货技术文章。

如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习

1. scp命令简介

scp是secure copy的缩写,用于两台Linux之间远程复制文件和目录,类似于cp,不过cp只是在本机进行拷贝不能跨服务器,scp利用ssh的通道进行传输文件,所以是加密的。

5dfa7bd8bf34b97c1a95a13fa748dc28.png

Linux scp命令简介

2. scp命令参数

-1 强制使用ssh1版本

-2 强制使用ssh2版本

-4 强制只使用IPv4

-6 强制只使用ipv6

-B 使用批处理模式,执行过程不提示

-C 允许压缩。

-p 留原文件的修改时间,访问时间和访问权限。

-q 不显示传输进度条。

-r 递归复制整个目录、子目录、所有文件。

-v 输出详细信息。

-c cipher 以cipher将数据传输进行加密。

-F ssh_config 指定配置文件。

-i identity_file 指定密钥文件。

-l limit 限定用户所能使用的带宽,以Kbit/s为单位。

-o ssh_option 使用参数传递,请参考ssh_config(5)中。

-P port 大写P, 指定数据传输端口号

-S program 指定加密传输时所使用的程序。参考ssh(1)的选项。

0ef7927ad14562b17730f1df529d76c4.png

Linux scp命令参数

3. 实例1

从远程服务器把文件zcwyou.rar复制到本地目录/var/http/

[root@zcwyou ~]# scp root@192.168.1.1:/root/zcwyou.rar /var/http/

4. 实例2

把/var/abc/zcwyou.log复制到目录/root/zcwyou

[root@zcwyou ~]# scp -r root@192.168.88.1:/var/abc/zcwyou.log /root/zcwyou

5. 实例3

复制本地文件/home/zcwyou/wp.tar.gz到远程机器10.1.1.1的/var/html/

[root@zcwyou ~]# scp /home/zcwyou/wp.tar.gz root@10.1.1.1:/var/html/

6. 实例4

把本地目录/root/zcwyou上传到172.16.26.100:/opt/nginx

[root@zcwyou ~]# scp -r /root/zcwyou root@172.16.26.100:/opt/nginx
90fd93896065f04170c2820ae14f1341.png

Linux之间传输文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: SCP是一种在Linux系统中用于安全传输文件的命令。它可以通过SSH协议在本地和远程主机之间传输文件使用SCP传输文件需要指定源文件和目标文件的路径,以及远程主机的IP地址和登录用户名。例如,将本地文件test.txt传输到远程主机192.168.1.100的/home/user目录下,命令如下: scp test.txt [email protected]:/home/user ### 回答2: Linux系统中,scp是一种用于在不同的计算机之间传输文件的命令。它可以在不同的计算机之间或同一台计算机的不同目录之间传输文件使用scp传输文件需要明确两个参数:源文件和目标位置。目标位置可为本地文件夹或远程主机的文件路径,具体取决于当前的工作状态。 scp可以通过密码验证或密钥验证进行传输,其中密钥验证的方式更为简单和安全,因此推荐使用使用scp命令的基本语法如下: ``` scp [参数] [源文件] [目标位置] ``` 以下是scp命令的一些常用参数: - -P:指定远程主机的端口号 - -r:递归传输目录及目录下的所有文件 - -v:显示传输进度和详情 例如,将本地文件/home/user/test.txt传输至远程主机的/home/remote_user目录下,命令如下: ``` scp /home/user/test.txt [email protected]:/home/remote_user/ ``` 如果需要传输整个目录,则使用-r参数。如下所示: ``` scp -r /home/user/test [email protected]:/home/remote_user/ ``` 使用scp命令进行传输时,还可以加入其他的参数进行高级设置。例如,使用-q参数禁用输出,并加入-p参数来打开文件权限保留。 总之,scp是一种非常方便的文件传输命令,它可以快速、安全地在不同的计算机和目录之间传输文件,而且使用方式也很简单,对于Linux系统的用户来说,是一种必不可少的命令。 ### 回答3: Linux中的scp是一种非常方便的文件传输工具,它允许用户在不同的计算机之间快速地复制文件和目录。scpssh协议的一部分,因此它的传输过程是经过加密的,安全性更高。 scp命令的基本格式为: ``` scp [参数] [原文件] [目标地址] ``` 其中,[参数]是一些可选的参数,可以根据需要选择使用。[原文件]指要传输的源文件或目录,可以使用绝对或相对路径。[目标地址]指文件传输的目标地址,可以是远程主机的IP地址或域名加上文件目录的完整路径。如果没有指定用户名,则默认使用当前登录用户。 下面是一些常用的scp命令参数: - -r:递归复制整个目录树。 - -P:指定远程主机的端口号,默认为22。 - -v:显示详细的传输信息。 - -C:开启压缩模式。 - -p:保留文件的原来权限和时间属性。 - -q:以安静模式传输,不显示传输进度信息。 - -i:指定使用的密钥文件。 例如,将本地文件/backup/data.txt传输到远程主机192.168.0.1的/tmp目录下,可以使用以下命令: ``` scp /backup/data.txt [email protected]:/tmp ``` 这个命令将/data.txt复制到远程主机的/tmp目录下,并将它的权限和时间属性保留不变。 如果要递归地复制整个目录mydir到远程主机的/home/user目录下,可以使用以下命令: ``` scp -r mydir [email protected]:/home/user/ ``` 当然,如果你使用scp经常与同一个远程主机进行文件传输,为了方便起见,可以将scp的远程主机地址和端口号设置为默认值。在~/.ssh目录下创建一个config文件,写入以下内容: ``` Host remote_host User myuser Hostname remote_host.com Port 2222 ``` 其中,remote_host、myuser、remote_host.com和2222分别代表远程主机的别名、登录用户名、主机名和端口号。这样,以后使用scp命令传输文件时,可以直接使用别名remote_host,而不必再输入完整的登录信息。例如: ``` scp file remote_host:/path/to/target ``` 综上所述,scp命令是Linux系统中非常实用的文件传输工具,它让文件传输变得更加方便和快捷。无论是用于备份数据、同步文件还是其他用途,都可以让我们的工作更加高效。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值