rsync 与 scp 笔记一、作用scp和rsync都可以通过 SSH 在本机和远程主机之间传输文件。scp适合简单复制文件或目录用法直观。rsync适合同步文件或目录只传输变化的部分效率更高。二、scp1. 基本格式scp[选项]源文件 目标位置远程路径格式用户名主机IP:路径2. 本地复制到远程scpfile.txt root192.168.1.10:/root/含义把本地file.txt复制到远程主机/root/目录。3. 远程复制到本地scproot192.168.1.10:/root/file.txt ./含义把远程主机/root/file.txt复制到当前目录。4. 复制目录scp-rdir/ root192.168.1.10:/root/-r表示递归复制目录。5. 指定端口scp-P2222file.txt root192.168.1.10:/root/注意scp指定端口使用大写-P。三、rsync1. 基本格式rsync[选项]源路径 目标路径常用组合rsync-av源路径 目标路径-a归档模式保留权限、时间、软链接等信息。-v显示同步过程。-z传输时压缩数据适合网络较慢时使用。--delete删除目标端多余文件使两边完全一致。2. 本地同步到远程rsync-avdir/ root192.168.1.10:/root/dir/含义把本地dir/目录中的内容同步到远程/root/dir/。3. 远程同步到本地rsync-avroot192.168.1.10:/root/dir/ ./dir/含义把远程/root/dir/中的内容同步到本地./dir/。4. 指定 SSH 端口rsync-av-essh -p 2222dir/ root192.168.1.10:/root/dir/注意rsync指定 SSH 端口通常通过-e ssh -p 端口。5. 删除目标端多余文件rsync-av--deletedir/ root192.168.1.10:/root/dir/含义目标目录中源目录没有的文件也会被删除。使用--delete前要确认目标路径避免误删。四、路径结尾斜杠的区别rsync对目录结尾的/很敏感。1. 带斜杠rsync-avdir/ /backup/dir/同步dir目录里面的内容。2. 不带斜杠rsync-avdir/backup/同步整个dir目录最终结果通常是/backup/dir/。记忆dir/复制目录里面的东西。dir复制目录本身。五、rsync 与 scp 的区别对比项scprsync主要用途复制文件同步文件传输方式通常整文件传输只传变化部分目录同步需要-r使用-a更常见删除多余文件不支持自动删除支持--delete断点/增量能力较弱较强适合场景临时拷贝小文件备份、部署、重复同步六、常见使用场景1. 临时传一个文件scptest.txt root192.168.1.10:/tmp/2. 同步项目目录rsync-av--deleteproject/ root192.168.1.10:/var/www/project/3. 先预览 rsync 会做什么rsync-av--dry-run project/ root192.168.1.10:/var/www/project/--dry-run表示只演示不真正执行同步。七、总结只是简单拷贝文件用scp。需要重复同步目录、做备份或部署用rsync。rsync使用前要注意路径后面的/。使用--delete前最好先加--dry-run预览结果。
rsync与scp的作用与核心区别
rsync 与 scp 笔记一、作用scp和rsync都可以通过 SSH 在本机和远程主机之间传输文件。scp适合简单复制文件或目录用法直观。rsync适合同步文件或目录只传输变化的部分效率更高。二、scp1. 基本格式scp[选项]源文件 目标位置远程路径格式用户名主机IP:路径2. 本地复制到远程scpfile.txt root192.168.1.10:/root/含义把本地file.txt复制到远程主机/root/目录。3. 远程复制到本地scproot192.168.1.10:/root/file.txt ./含义把远程主机/root/file.txt复制到当前目录。4. 复制目录scp-rdir/ root192.168.1.10:/root/-r表示递归复制目录。5. 指定端口scp-P2222file.txt root192.168.1.10:/root/注意scp指定端口使用大写-P。三、rsync1. 基本格式rsync[选项]源路径 目标路径常用组合rsync-av源路径 目标路径-a归档模式保留权限、时间、软链接等信息。-v显示同步过程。-z传输时压缩数据适合网络较慢时使用。--delete删除目标端多余文件使两边完全一致。2. 本地同步到远程rsync-avdir/ root192.168.1.10:/root/dir/含义把本地dir/目录中的内容同步到远程/root/dir/。3. 远程同步到本地rsync-avroot192.168.1.10:/root/dir/ ./dir/含义把远程/root/dir/中的内容同步到本地./dir/。4. 指定 SSH 端口rsync-av-essh -p 2222dir/ root192.168.1.10:/root/dir/注意rsync指定 SSH 端口通常通过-e ssh -p 端口。5. 删除目标端多余文件rsync-av--deletedir/ root192.168.1.10:/root/dir/含义目标目录中源目录没有的文件也会被删除。使用--delete前要确认目标路径避免误删。四、路径结尾斜杠的区别rsync对目录结尾的/很敏感。1. 带斜杠rsync-avdir/ /backup/dir/同步dir目录里面的内容。2. 不带斜杠rsync-avdir/backup/同步整个dir目录最终结果通常是/backup/dir/。记忆dir/复制目录里面的东西。dir复制目录本身。五、rsync 与 scp 的区别对比项scprsync主要用途复制文件同步文件传输方式通常整文件传输只传变化部分目录同步需要-r使用-a更常见删除多余文件不支持自动删除支持--delete断点/增量能力较弱较强适合场景临时拷贝小文件备份、部署、重复同步六、常见使用场景1. 临时传一个文件scptest.txt root192.168.1.10:/tmp/2. 同步项目目录rsync-av--deleteproject/ root192.168.1.10:/var/www/project/3. 先预览 rsync 会做什么rsync-av--dry-run project/ root192.168.1.10:/var/www/project/--dry-run表示只演示不真正执行同步。七、总结只是简单拷贝文件用scp。需要重复同步目录、做备份或部署用rsync。rsync使用前要注意路径后面的/。使用--delete前最好先加--dry-run预览结果。