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博客

相关推荐
还卿一钵无情泪9 小时前
Unsloth 微调 构建自己的大模型 没有GPU也能微调
linux·开发语言·人工智能·python·大模型·nlp·unsloth
高山有多高9 小时前
【Linux笔记】IO模型
linux
不会就选b9 小时前
Linux之TCP理论<1>
linux·运维·服务器
小π军10 小时前
操作系统面试题
java·linux·服务器
Lsetea11 小时前
curl用IP测试HTTPS报证书不匹配:--resolve与Host头别混用
linux·https·ssl证书·openssl·curl
Hao28511 小时前
Windows11 下把 WSL2 Ubuntu 26.04 装到 D 盘完整
linux
Android系统攻城狮11 小时前
Linux Gstreamer深度解析之gst_audio_encoder_get_frame_samples_min调用流程与实战(六十)
linux·运维·服务器·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
_upupup12 小时前
Linux中的自动化构建——make/Makefile
linux·运维·自动化
HEJOO912 小时前
Linux 设备驱动系列——使用全局工作队列
java·linux·算法
slimer13 小时前
07.进制转换上篇:位权展开与十进制互转
linux