SSH远程拷贝文件有哪些详细常用命令?具体操作步骤如何实现?

SSH(Secure Shell)是一种加密的网络协议,常用于远程登录和文件传输,在SSH环境下,拷贝文件主要通过scp(secure copy)和sftp(SSH file transfer protocol)两种命令实现,rsync(remote synchronization)工具也可结合SSH使用,适合增量同步场景,以下是具体命令用法和场景说明。

ssh怎么拷贝文件命令

scp命令:快速单次文件/目录拷贝

scp基于SSH协议,通过加密传输保障安全性,适合小文件或一次性拷贝,语法格式为:
scp [选项] 源文件 目标地址
源文件/目标地址格式:本地路径(如/home/file.txt)或远程路径(如user@host:/path/to/file)。

常用选项及场景

选项 作用 示例
-r 递归拷贝目录 本地目录→远程:scp -r /local/folder user@remote:/remote/folder
-P 指定SSH端口(默认22,需大写) scp -P 2222 file.txt user@remote:/home/
-p 保留文件权限、时间戳 scp -p file.txt user@remote:/home/
-C 启用压缩(适合大文件) scp -C large_file.zip user@remote:/home/
-v 显示详细传输过程(调试用) scp -v file.txt user@remote:/home/

典型用例

  1. 本地→远程:拷贝本地文件到远程服务器指定目录
    scp /home/user/file.txt root@192.168.1.100:/opt/
  2. 远程→本地:从远程服务器下载文件到本地
    scp root@192.168.1.100:/opt/file.txt /home/user/
  3. 远程→远程:通过本地主机中转,直接在两台远程服务器间拷贝(避免本地存储)
    scp user1@host1:/file.txt user2@host2:/backup/

sftp命令:交互式文件管理

sftp是SSH的文件传输协议,提供类似FTP的交互式界面,支持上传、下载、删除、目录操作等,适合批量管理或复杂场景,通过sftp user@host登录后,进入命令行交互模式:

ssh怎么拷贝文件命令

常用交互命令

命令 作用 示例
get 下载远程文件到本地 get remote_file.txt /home/local/
put 上传本地文件到远程 put local_file.txt /home/remote/
lcd 切换本地目录 lcd /home/user/download
cd 切换远程目录 cd /var/log
mget/mput 批量下载/上传(支持通配符) mget *.log
ls/dir 列出远程目录文件 ls -l
rm 删除远程文件 rm old_file.txt

使用流程

  1. 连接远程服务器:sftp user@192.168.1.100
  2. 下载文件:get /remote/path/file.txt /local/path/
  3. 上传文件:put /local/path/file.txt /remote/path/
  4. 退出:exit

rsync命令:增量同步(高效大文件/目录同步)

rsync通过差异算法仅传输变化的文件,适合大文件、频繁同步或备份场景,结合SSH使用时语法为:
rsync [选项] 源路径 目标路径

核心优势与选项

选项 作用 示例
-a 归档模式(保留权限、时间戳等,相当于-rlptgoD rsync -av /local/folder/ user@remote:/remote/
-v 显示同步过程 rsync -v file.txt user@remote:/home/
-z 压缩传输(节省带宽) rsync -az /local/ user@remote:/remote/
--progress 显示传输进度条 rsync --progress large_file.zip user@remote:/home/
--delete 删除目标中多余的文件(确保同步一致性) rsync -a --delete /source/ /destination/

注意事项

  • 源路径末尾加(如/local/folder/)表示同步目录内容,不加则同步目录本身。
  • 需在远程服务器安装rsync(默认多数Linux系统已安装)。

注意事项

  1. 权限与认证:确保本地用户有远程服务器目标路径的读写权限,推荐使用SSH密钥认证(避免密码输错)。
  2. 端口与防火墙:若SSH端口非默认22,需用-P指定,并确保防火墙开放该端口。
  3. 大文件传输:超大文件可能因网络波动中断,rsync支持断点续传(通过--partial选项),scp需手动重新传输。

相关问答FAQs

Q1: scp和rsync有什么区别?如何选择?
A: scp基于SSH协议,适合小文件或一次性拷贝,简单直接但无法断点续传;rsync通过增量算法传输,仅同步变化部分,适合大文件、频繁同步或备份场景,支持断点续传和删除多余文件,若需快速传输小文件用scp,需高效同步或大文件传输用rsync。

ssh怎么拷贝文件命令

Q2: sftp和ftp有什么区别?为什么推荐sftp?
A: ftp(文件传输协议)是明文传输,不安全;sftp基于SSH协议,所有数据均加密传输,且支持SSH的密钥认证和端口转发,安全性更高,sftp可直接通过SSH登录(无需额外服务),而ftp需单独配置ftp服务,因此推荐使用sftp替代ftp。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/18401.html

(0)
酷番叔酷番叔
上一篇 2025年8月27日 21:10
下一篇 2025年8月27日 21:21

相关推荐

  • 安全数据融合机制是什么?

    安全数据融合机制是一种将来自不同来源、不同格式、不同安全级别的数据进行有效整合、分析与应用的技术体系,其核心目标是提升安全事件的检测精度、响应效率以及整体安全态势的感知能力,在信息化时代,网络攻击手段日益复杂,单一安全设备或数据源已难以全面应对威胁,安全数据融合机制通过多维度数据的协同处理,实现了从“被动防御……

    2025年11月23日
    2300
  • 安义工业园质检部长招聘信息有哪些?

    安义工业园作为江西省重要的工业基地,聚集了多家制造型企业,涵盖建材、食品加工、机械制造等领域,部分企业仍在招聘质检部长岗位,以下从行业分布、岗位职责、任职要求及招聘渠道等方面进行详细梳理,为求职者提供参考,招聘质检部长的企业及行业分布根据最新招聘信息,安义工业园内以下类型的企业存在质检部长岗位需求:建材制造类企……

    2025年11月22日
    1400
  • Hive里面怎么执行命令?详细操作步骤与方法是什么?

    Hive作为基于Hadoop的数据仓库工具,提供了多种命令执行方式,满足不同场景下的数据查询、管理和分析需求,掌握这些执行方式是高效使用Hive的关键,下面将详细介绍Hive中执行命令的各类方法及具体操作,交互式命令执行交互式执行是Hive最常用的方式之一,用户通过命令行客户端直接输入HiveQL语句并即时查看……

    2025年8月24日
    5800
  • 怎么退出linux命令行模式

    Linux 命令行中,输入 exit 或按 Ctrl + D 可

    2025年8月14日
    6700
  • 安全报告书的核心内容、关键风险及防控措施有哪些?

    安全报告书是系统化记录、分析安全状况的重要文件,旨在全面评估组织或系统的安全风险,为风险防控、合规管理及持续改进提供依据,其编制需遵循客观性、全面性、针对性原则,确保内容真实可靠、数据准确详实、建议切实可行,以下从报告编制目的、评估方法、核心发现、改进措施及总结展望等方面展开说明,报告编制目的与适用范围安全报告……

    2025年11月15日
    1900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信