Mr.Yuan Mr.Yuan

苟正其身矣,于从政乎何有?不能正其身,如正人何?

目录
Mac, linux 命令篇 - scp
/  

Mac, linux 命令篇 - scp

usage: scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
 [-l limit] [-o ssh_option] [-P port] [-S program]
 [[user@]host1:]file1 ... [[user@]host2:]file2

名称:scp
使用权限:所有使用者

scp是什么:

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

scp有什么用:

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

使用方式:

可能有用的几个参数 :
-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .
-C 使能压缩选项 .
-P 选择端口 . 注意 -p 已经被 rcp 使用 .
-r 目录(默认是文件) .
-4 强行使用 IPV4 地址 .
-6 强行使用 IPV6 地址 .

命令基本格式:

scp [options] file_source file_target

往服务器上传文件:

  • 命令格式:
scp local_file remote_username@remote_ip:remote_folder 
或者 
scp local_file remote_username@remote_ip:remote_file 
或者 
scp local_file remote_ip:remote_folder 
或者 
scp local_file remote_ip:remote_file

第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;

  • 举个栗子:
scp ~/Document/1.txt root@192.168.10.100:~/Document/others
scp ~/Document/1.txt root@192.168.10.100:~/Document/others/ck.txt
scp ~/Document/1.txt 192.168.10.100:~/Document/others
scp ~/Document/1.txt 192.168.10.100:~/Document/others/ck.txt

这里上传的是文件, 如果需要上传目录 添加 -r 参数就可以了

例如:

scp -r ~/Document/1.txt 192.168.10.100:~/Document/others

从服务器下载文件:

  • 命令格式:

很简单上面已经知道上传的格式了,这里要做的就是把这个目录反过来就好了。

  • 举个栗子:
scp root@192.168.10.100:~/Document/others/1.txt ~/Document/1.txt

这个即可下载服务器文件 ~/Document/others/1.txt 到自己设备目录 ~/Document 目录下并创建 1.txt (文件名可自己修改) 文件

同理,下载目录的话也是加 -r 参数

多文件的上传与下载:

scp也是支持多文件的上传与下载的。

scp [options] file_source... file_target
  • 继续栗子:
scp root@116.*.*.10:/etc/y.conf root@116.62.170.252:/etc/p.conf ./

下载服务器 etc 目录下的 y.conf, p.conf 到当前目录下

scp ./p.conf ./y.conf root@116.*.*.10:/usr/local/

上传 p.conf, y.conf 到服务器 /usr/local/ 目录下

--

scp在服务器没有ftp的情况下,很方便的提供了文件传输方式。实际时,配合密钥对和多文件上传的方式可以很方便的处理

PS:

  1. 使用scp要确认你的用户有相应的权限;
  2. 防火墙是否有特殊的端口设定,可以使用-P(大写)来修改端口;

标题:Mac, linux 命令篇 - scp
作者:K
地址:https://pala.icu/articles/2019/12/21/1576858226716.html