linux中的rsync命令

linux中的rsync命令常见用法

基本介绍


  1. 用途:常用于在不同的linux机器间进行拷贝或者同步文件(例如在你的本地机器和服务器的文件传输同步等),而且这个命令不需要root权限.
  2. 如果你的机器还没rsync命令,ubuntu上可以通过sudo apt install rsync进行安装.
  3. 使用remote-uopdate协议,意味着他只是传输文件不同的部分.这使得它传输得更快,而且也能具备同步的功能.

基本用法


  1. 基本语法: rsync option src dest
  2. 常用选项:

    opt description
    -v 冗长模式,显示详细信息
    -r 递归拷贝,但是不会保留文件的时间,权限信息
    -a 归档模式,拷贝的同时会保留原文件信息(symblic links, file permissions, user and group ownership, timestamps)
    -z 传输的过程进行文件的压缩
    -h 易读模式(human-readable)
    -e 使用特定协议进行传输,后面指定协议名称(如-e ssh表示使用,注意,如果使用此选项,多选项一定要把e放在选项的最后,例如 -avzhe ssh)
    –progress 显示数据传输过程
    –include ‘filename’, –exclude ‘filename’ 指定包含或者排除的传输文件,支持通配符.
    –delete 用于同步,如果某个文件或者目录在src不存在但是在dest存在,那么那就会在dest中删除这个文件.
    –max-size 指定传输的最大大小,例如–max-size=’200k’ 就只可以传输小于等于200k的文件大小.
    –remove-source 成功传输后删除原文件或者原文件夹
    –dry-run 模拟传输过程,即不是真实传输,只是让你看看执行此命令的输出,如果输入和你理想中一样,就可以删除此选项进行真实的传输或同步
    –bwlimit 设置传输带宽限制

常见用法


  1. 在一台机器内的文件的拷贝和同步:rsync -zvh srcfile destdir/.
  2. 在一台机器内的文件夹的拷贝和同步:rsync -avzh srcdir destdir/.
  3. 将本地机器文件/文件夹传输或同步到远程机器:rsync -avzh local_dir user@server_ip:absolute_path
  4. 将远程机器文件/文件夹传输或同步到本地机器:rsync -avzh user@server_ip:absolute_path local_path
  5. 结合上面的基本用法,你应该可以掌握许多种用法了.

猜你喜欢

转载自blog.csdn.net/qq_37993487/article/details/79848069