欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

Linux中scp命令获取远程文件的方法

程序员文章站 2022-08-26 16:29:59
一、scp是什么? scp是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且sc...

一、scp是什么?

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

二、scp有什么用?

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

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

三、scp使用方法

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

# cp -p 2424 username@(ip或远程服务别名):/home/username/a.tar.gz /home/username/
-p 2424表示更改ssh端口后的端口,如果没有更改ssh端口可以不用添加该参数;

username@ip 表示使用指定用户登录远程服务器;

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

# scp -p 2424 -r name@ip:/home/name/aaa/ /home/name/
-r 参数表示递归复制(即复制该目录下面的文件和目录);

name@ip:/home/name/aaa/ 表示将远程服务器上用户家目录下的aaa文件夹的内容复制到本地加目录下;

/home/name/ 表示保存在本地上的路径;

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

# scp -p 2424 ~/aaa.tar.gz name@ip:/home/user/
表示将本地用户家目录的文件上传至远程服务器上用户的家目录下;

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

# scp -p 2424 -r ~/aaa/ name@ip:/home/user/bbb/
表示将本地家目录aaa的文件夹的文件全部传至远程服务用户家目录下的bbb文件夹里;

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

-p 端口;

-p 表示保持文件权限;

-r 表示递归复制;

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

-c 使能压缩选项;

-4 强行使用 ipv4 地址;

-6 强行使用 ipv6 地址;

以上所述是小编给大家介绍的linux中scp命令获取远程文件的方法,希望对大家有所帮助