rsync 是一个用于在本地和远程计算机之间同步文件和目录的命令行工具。它具有许多强大的功能,包括增量传输、压缩和保留权限等。以下是一些 rsync 的常用选项和用法示例:

基本用法

rsync [OPTION]... SRC [SRC]... DEST

常用选项

  • -a--archive:归档模式,表示递归复制,并保持所有文件属性,相当于 -rlptgoD
  • -v--verbose:显示详细信息
  • -z--compress:在传输过程中压缩文件数据
  • -P:显示传输进度并保持部分传输的文件,相当于 --partial --progress
  • -r--recursive:递归处理子目录
  • -l--links:复制符号链接
  • -h--human-readable:以人类可读的格式输出文件大小
  • -e:指定远程 shell 程序,例如 ssh

本地到本地同步

/source/directory/ 目录中的内容同步到 /destination/directory/ 目录:

rsync -av /source/directory/ /destination/directory/

本地到远程同步

将本地目录 /source/directory/ 中的内容同步到远程主机 remotehost/destination/directory/

rsync -avz /source/directory/ user@remotehost:/destination/directory/

远程到本地同步

将远程主机 remotehost/source/directory/ 中的内容同步到本地目录 /destination/directory/

rsync -avz user@remotehost:/source/directory/ /destination/directory/

仅同步修改过的文件

使用 --update 选项仅同步修改过的文件:

rsync -avu /source/directory/ /destination/directory/

删除目标目录中源目录中没有的文件

使用 --delete 选项删除目标目录中源目录中没有的文件:

rsync -av --delete /source/directory/ /destination/directory/

排除某些文件或目录

使用 --exclude 选项排除特定的文件或目录:

rsync -av --exclude 'node_modules' /source/directory/ /destination/directory/

示例命令

  1. 从本地目录同步到远程服务器:

    rsync -avz -e ssh /path/to/local/dir/ user@remotehost:/path/to/remote/dir/
  2. 从远程服务器同步到本地目录:

    rsync -avz -e ssh user@remotehost:/path/to/remote/dir/ /path/to/local/dir/
  3. 仅同步修改过的文件并显示传输进度:

    rsync -avzu --progress /source/directory/ /destination/directory/

使用 -e 选项的示例

-e 选项用于指定用于远程传输的远程 shell 程序(例如 ssh)。默认情况下,rsync 会使用 ssh 进行远程连接,但你可以通过 -e 选项指定其他的远程 shell 或自定义 ssh 参数。

  1. 指定使用 ssh 进行远程传输

    rsync -avz -e ssh /path/to/local/dir/ user@remotehost:/path/to/remote/dir/
  2. 指定自定义的 ssh 参数

    如果你想使用特定的 ssh 参数,比如更改端口号,可以这样做:

    rsync -avz -e 'ssh -p 2222' /path/to/local/dir/ user@remotehost:/path/to/remote/dir/

    这里,-p 2222 指定使用 ssh 的 2222 端口。

  3. 使用不同的远程 shell 程序

    虽然通常情况下会使用 ssh,但你也可以指定其他远程 shell 程序,例如 rsh

    rsync -avz -e rsh /path/to/local/dir/ user@remotehost:/path/to/remote/dir/

具体示例

  1. 使用默认的 ssh 进行远程同步

    rsync -avz -e ssh /home/user/Documents/ user@remotehost:/backup/Documents/
  2. 使用 ssh 并指定端口号

    rsync -avz -e 'ssh -p 2222' /home/user/Documents/ user@remotehost:/backup/Documents/
  3. 使用 ssh 并指定使用特定的身份验证密钥文件

    rsync -avz -e 'ssh -i /path/to/private_key' /home/user/Documents/ user@remotehost:/backup/Documents/
  4. 使用 rsh 进行远程同步

    rsync -avz -e rsh /home/user/Documents/ user@remotehost:/backup/Documents/

rysnc使用手册的更多相关文章

  1. man rsync翻译(rsync命令中文手册)

    本文为命令rsync的man文档翻译,几乎所有的选项都翻译了,另外关于筛选规则部分只翻译了一部分.由于原文很多地方都比较啰嗦,所以译文中有些内容可能容易让国人疑惑,所以我个人在某些地方加上了注释.若有 ...

  2. FREERTOS 手册阅读笔记

    郑重声明,版权所有! 转载需说明. FREERTOS堆栈大小的单位是word,不是byte. 根据处理器架构优化系统的任务优先级不能超过32,If the architecture optimized ...

  3. JS魔法堂:不完全国际化&本地化手册 之 理論篇

    前言  最近加入到新项目组负责前端技术预研和选型,其中涉及到一个熟悉又陌生的需求--国际化&本地化.熟悉的是之前的项目也玩过,陌生的是之前的实现仅仅停留在"有"的阶段而已. ...

  4. 转职成为TypeScript程序员的参考手册

    写在前面 作者并没有任何可以作为背书的履历来证明自己写作这份手册的分量. 其内容大都来自于TypeScript官方资料或者搜索引擎获得,期间掺杂少量作者的私见,并会标明. 大部分内容来自于http:/ ...

  5. Redis学习手册(目录)

    为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三.其一,Redis不仅性能高效,而且完全免费.其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧.最后 ...

  6. JS魔法堂:不完全国际化&本地化手册 之 实战篇

    前言  最近加入到新项目组负责前端技术预研和选型,其中涉及到一个熟悉又陌生的需求--国际化&本地化.熟悉的是之前的项目也玩过,陌生的是之前的实现仅仅停留在"有"的阶段而已. ...

  7. Windows API 函数列表 附帮助手册

    所有Windows API函数列表,为了方便查询,也为了大家查找,所以整理一下贡献出来了. 帮助手册:700多个Windows API的函数手册 免费下载 API之网络函数 API之消息函数 API之 ...

  8. linux命令在线手册

    下面几个网址有一些 Linux命令的在线手册,而且还是中文的,还可以搜索.非常方便 Linux命令手册 Linux命令大全 Linux中文man在线手册 每日一linux命令

  9. Mysql完全手册(笔记二,使用数据与性能优化)

    一.使用数据 1.使用变量 MySQL也可以让我们以用户自定义的变量来存储select查询的结果,以便在将来select查询中使用.它们只会在客户会话期间存在,但是它们提供一个方便有效的方法来连接查询 ...

  10. html javascript css3 php3.2.3离线手册

    各位新年快乐! 愿大家"愿有前程可奔赴,也有岁月可回头"! 发现个离线手册很全的网站,分享大家,也mark自用. http://www.shouce.ren/ 手册网

随机推荐

  1. day07-数据类型及标识符

    数据类型 强类型语言 要求变量的使用严格要严格符合规定,所有变量都必须先定义后才能使用 弱类型语言 java的数据类型分为两大类 基本类型(primitive type) 数值类型 整数类型 byte ...

  2. C# 并发控制框架:单线程环境下实现每秒百万级调度

    前言 在工业自动化和机器视觉领域,对实时性.可靠性和效率的要求越来越高.为了满足这些需求,我们开发了一款专为工业自动化运动控制和机器视觉流程开发设计的 C# 并发流程控制框架. 该框架不仅适用于各种工 ...

  3. FFmpeg开发笔记(五十八)把32位采样的MP3转换为16位的PCM音频

    ​<FFmpeg开发实战:从零基础到短视频上线>一书的"5.1.2  把音频流保存为PCM文件"介绍了如何把媒体文件中的音频流转存为原始的PCM音频,在样例代码的转存过 ...

  4. 自建家庭 KTV,在家想嗨就嗨

    现在用户最多.曲库最多的 K 歌软件是全民K歌,基本上想唱的歌都有,而且基本上每首歌都有 MV 或视频,使用体验也还不错,但是收费太贵了,对于一个月唱不了几次的打工人来说,唱一首歌就是"天价 ...

  5. LeetCode题目练习记录 _数组和链表01 _20211007

    LeetCode题目练习记录 _数组和链表01 _20211007 26. 删除有序数组中的重复项 难度简单2247 给你一个有序数组 nums ,请你原地 删除重复出现的元素,使每个元素 只出现一次 ...

  6. 深度学习入门笔记——DataLoader的使用

    如何使用数据集DataSet? 在介绍DataLoader之前,需要先了解数据集DataSet的使用.Pytorch中集成了很多已经处理好的数据集,在pytorch的torchvision.torch ...

  7. Python311新特性-特化指令specializing adaptive interpreter-typing-asyncio

    Python3新特性 python3.11增加了许多特性,让python更快更加安全,本文从应用层面来讲一下python3.11的这些新特性 特化自适应解析器是什么,如何利用特化写出更高性能的代码 如 ...

  8. 5.7 Linux Vim可视化模式

    相信大家都使用过带图形界面的操作系统中的文字编辑器,用户可以使用鼠标来选择要操作的文本,非常方便.在 Vim 编辑器中也有类似的功能,但不是通过鼠标,而是通过键盘来选择要操作的文本. 在 Vim 中, ...

  9. 13-2 c++拷贝控制和资源管理

    目录 13.2.1 行为像值的类 类拷贝赋值运算符的编写 13.2.2 定义行为像指针的类 引用计数 定义一个使用引用计数的类 为了定义这些成员,我们首先必须确定此类型对象的拷贝语义.一般来说,有两种 ...

  10. 干货分享:Air780E开发板如何使用?

    ​ 一.概述 CORE-AIR780E 开发板是合宙通信推出的基于 Air780E 模组所开发的,包含电源,SIM 卡,USB,天线,音频等必要功能的最小硬件系统.以方便用户在设计前期对 Air780 ...