首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

lLinux系统操作(18):scp(服务器之间的文件传输)

  • 25-03-03 17:22
  • 2294
  • 9550
blog.csdn.net

文章目录

  • 0、简介
  • 1、命令格式:
    • 1.1 命令参数:
  • 2、使用实例:
    • 2.1 从本地服务器复制到远程服务器
      • (1) 复制文件:
      • (2) 复制目录:
    • 2.2 从远程服务器复制到本地服务器:
      • (1)复制文件:
      • (2)复制目录:
  • 备注问题

0、简介

scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远不及它了。虽然 rsync比scp会快一点,但当小文件众多的情况下,rsync会导致硬盘I/O非常高,而scp基本不影响系统正常使用。

1、命令格式:

scp [参数] [原路径] [目标路径]

1.1 命令参数:

-1 强制scp命令使用协议ssh1 
-2 强制scp命令使用协议ssh2 
-4 强制scp命令只使用IPv4寻址 
-6 强制scp命令只使用IPv6寻址 
-B 使用批处理模式(传输过程中不询问传输口令或短语) 
-C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能) 
-p 保留原文件的修改时间,访问时间和访问权限。 
-q 不显示传输进度条。 
-r 递归复制整个目录。 
-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。  
-c cipher 以cipher将数据传输进行加密,这个选项将直接传递给ssh。  
-F ssh_config 指定一个替代的ssh配置文件,此参数直接传递给ssh。 
-i identity_file 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。  
-l limit 限定用户所能使用的带宽,以Kbit/s为单位。   
-o ssh_option 如果习惯于使用ssh_config(5)中的参数传递方式,  
-P port 注意是大写的P, port是指定数据传输用到的端口号  
-S program 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

2、使用实例:

2.1 从本地服务器复制到远程服务器

(1) 复制文件:

命令格式:

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
  • 3
  • 4

第1,2个指定了用户名,命令执行后需要输入用户密码

第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名,所以按照新的文件名保存

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

(2) 复制目录:

命令格式:

scp -r local_folder remote_username@remote_ip:remote_folder 
scp -r local_folder remote_ip:remote_folder 
  • 1
  • 2

第1个指定了用户名,命令执行后需要输入用户密码;

第2个没有指定用户名,命令执行后需要输入用户名和密码;

2.2 从远程服务器复制到本地服务器:

从远程复制到本地的scp命令与上面的命令雷同,只要将从本地复制到远程的命令后面2个参数互换顺序就行了。

(1)复制文件:

命令格式:

scp remote_username@remote_ip:remote_folder local_file  
scp remote_username@remote_ip:remote_file  local_file 
scp remote_ip:remote_folder local_file 
scp remote_ip:remote_file local_file 
  • 1
  • 2
  • 3
  • 4

(2)复制目录:

命令格式:

scp -r remote_username@remote_ip:remote_folder local_folder 
scp -r remote_ip:remote_folder  local_folder 
  • 1
  • 2

备注问题

通常情况下, ssh的默认端口都会自定义, 这时候需要指定端口号来实现文件的传送. 这里就介绍一下指定端口号的方法。如果需要指定端口的话使用如下指令

-P: 大写的P, 指定端口号

file_name: 指本机的文件路径, 绝对路径相对路径都可

user: 远程主机的一个可用的用户名

ip: 远程主机ip

dir_name: 远程的一个user可以写入文件的目录

注意: 选项-P的位置, 尽量直接放在scp命令之后, 否则可能有错误.

scp -P 2233 get_info.sh [email protected]:/usr/local/src
  • 1

注:本文转载自blog.csdn.net的呆呆象呆呆的文章"https://blog.csdn.net/qq_41554005/article/details/103319894"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2491) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top