Linux scp命令

scp(secure copy)命令是Linux和Unix系统下用于通过SSH协议安全地复制文件和目录的工具。它提供了一种方便的方式来在本地和远程系统之间传输数据,同时保持了数据传输的安全性和完整性。

基本语法
bash 复制代码
scp [选项] [源路径] [目标路径]
  • 源路径 :可以是本地文件或目录的路径,也可以是远程主机上的文件或目录的路径(格式为用户名@主机地址**:**绝对路径)。
  • 目标路径 :与源路径相对应,表示数据要复制到的位置,同样可以是本地或远程的路径。
常用选项
  • -r **:**递归复制整个目录及其子目录。
  • -P **(注意是大写):**指定SSH连接使用的端口号(默认是22)。
  • -p **(注意是小写):**保留原文件的修改时间、访问时间和权限。注意,这个选项并不表示通过加密传输(尽管scp本身是通过SSH加密的)。
  • -C **:**启用压缩,可以加快传输速度(特别是当文件较大且网络速度较慢时)。
  • -i **:**指定私钥文件的路径,用于SSH身份验证。
  • -v **:**详细模式,显示传输过程中的详细信息。
  • -q **:**安静模式,不显示传输进度条和警告信息。
  • -l **:**限制scp传输时使用的带宽(以Kbit/s为单位)。
举例

1)从远端服务器拷贝文件到本地

2)从本地拷贝文件到远端服务器

bash 复制代码
# 3)拷贝文件夹
scp -r /path/to/local/directory username@remotehost:/path/to/remote/directory
# 递归地将本地的/path/to/local/directory目录及其子目录和文件复制到远程主机username@remotehost的/path/to/remote/directory目录下。

# 4)指定SSH端口
scp -P 2222 /path/to/local/file username@remotehost:/path/to/remote/directory
# 如果远程主机的SSH服务不在默认的22端口上运行,可以使用-P选项指定端口号。

# 5)保留文件属性
scp -p /path/to/local/file username@remotehost:/path/to/remote/directory
# 在复制文件时,保留原文件的修改时间、访问时间和权限

# 6)使用私钥文件
scp -i /path/to/private_key /path/to/local/file username@remotehost:/path/to/remote/directory
# 如果SSH连接需要私钥文件进行身份验证,可以使用-i选项指定私钥文件的路径。
和复制粘贴方式比较, SCP方式的优势
  • 安全性和完整性 :SCP使用SSH(Secure Shell)协议进行加密和认证,确保传输过程中的数据安全和完整性。这是跨平台复制粘贴通常无法提供的安全级别。

使用场景:windows和linnux之间跨平台拷贝二进制文件时,直接复制粘贴容易破坏二进制文件的完整性,一般采用scp方式传输。

  • 可控性 :SCP提供了更多的选项和参数,允许用户精细控制文件传输过程,如限制带宽、递归复制目录等。
  • 高效性 :对于大量文件或大型文件的传输,SCP通常比基于剪贴板的传输方式更高效。SCP还支持断点续传,这意味着如果传输过程中发生中断,可以从中断的地方继续传输。
  • 跨网络 :SCP允许用户在不同网络之间的计算机上传输文件,而不仅仅局限于同一局域网或支持剪贴板同步的设备之间。
拓展:windows平台传输工具pscp.exe

windows系统和Centos下linux系统文件的互相拷贝_centos8怎么复制文件到windows中-CSDN博客

相关推荐
乌萨奇也要立志学C++5 小时前
【Linux】网络基础 从零理解网络通信:局域网、跨网传输与 Socket 预备知识
linux·服务器·网络
RisunJan6 小时前
Linux命令-slabtop(实时显示内核 slab 缓存信息)
linux
蚰蜒螟9 小时前
从内核源码看Linux启动:chroot、execve与MS_MOVE的协奏曲
linux·服务器·网络
酷可达拉斯9 小时前
自动化运维-ansible配置文件与主机清单
linux·运维·自动化·ansible
影视飓风TIM10 小时前
Linux下C语言缓冲区原理 + Git版本控制
linux·c语言·git
来者皆善10 小时前
ZYNQ linux上使用 USB CDC ACM
linux·运维·服务器
☆凡尘清心☆11 小时前
CentOS Stream 9 专用 LNMP 全自动一键脚本
linux·运维·mysql·nginx·lnmp·centos stream 9
Dawn-bit11 小时前
Linux磁盘分区与Swap和磁盘故障查询
linux·运维·服务器·网络·云计算
无足鸟ICT13 小时前
【RHCA+】$[]
linux·运维·服务器
运维技术小记13 小时前
国产化环境配置 VNC 远程桌面:麒麟 V10 实战
linux·运维·服务器