rsync复制文件指令

rsync 是一个常用的 Linux 应用程序,用于文件同步。
它可以在本地计算机与远程计算机之间,或者两个本地目录之间同步文件(但不支持两台远程计算机之间的同步)。它也可以当作增强版的文件传输工具,替代cp和mv等命令

安装

# Debian
$ sudo apt-get install rsync

# Red Hat
$ sudo yum install rsync

# Arch Linux
$ sudo pacman -S rsync

rsync指令参数

-v, --verbose:详细模式,输出更多信息。
-q, --quiet:安静模式,减少输出信息。
-a, --archive:归档模式,等同于 -rlptgoD,这将保留文件的所有属性,如权限、所有者、时间戳等。
-D:允许设备文件、特殊文件和FIFO文件的传输,在这里,-D选项的含义是允许rsync传输设备文件、特殊文件和FIFO文件。设备文件是指Linux系统中的设备节点,例如/dev/sda表示硬盘设备,/dev/tty表示终端设备,/dev/null表示空设备等。特殊文件是指除了普通文件之外的其他文件,例如命名管道(FIFO)和套接字(socket)。-D选项可以保证这些特殊文件在传输过程中得以正确处理,而不会被错误地当作普通文件处理。
-r, --recursive:递归复制目录及其子目录下的所有文件和子目录。
-z, --compress:在传输过程中压缩数据,这将减少数据量,提高传输速度。
-h, --human-readable:输出人类可读的信息。
–delete:删除目标目录中源目录没有的文件。
–progress:显示进度信息。
-n, --dry-run:不实际复制任何文件,只模拟操作过程,用于测试和验证。
-e, --rsh=COMMAND:指定使用的远程 shell,可以用于指定 ssh 参数。
-b, --backup:备份模式,备份已经存在于目标并且有差异的文件。
–backup-dir=DIR:与 -b 选项一起使用,指定备份文件的目录。
-u, --update:更新模式,只同步比目标文件更新(修改时间更近)的源文件。
-l, --links:保留符号链接。
-p, --perms:保留文件权限。
-o, --owner:保留文件所有者(需要超级用户权限)。
-g, --group:保留文件所属组。
-t, --times:保留文件时间戳。
-S, --sparse:对稀疏文件进行特殊处理以节省空间。
–existing:只更新目标中已经存在的文件,不创建新文件。
–ignore-existing:忽略目标中已经存在的文件,只复制新文件。
-n, --dry-run:模拟运行,不做任何改动,通常用于测试。
-W, --whole-file:关闭 rsync 的增量传输功能,总是传输整个文件

使用实例

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

rsync -avz ~/local_dir username@remote_host:/remote_dir/

2.从远程服务器复制文件到本地目录:

rsync -avz username@remote_host:/remote_file ~/local_dir/

3.在同一台机器上的两个目录之间同步文件:

rsync -avz /source_dir/ /destination_dir/

4.复制当前目录所有文件到远程地址,排除yolo.tar文件

rsync -av --exclude='yolo.tar' . username@remote_host:/path/to/destination/

其中,-a选项表示以归档模式拷贝文件,保留文件属性和权限等信息;-v选项表示输出详细的信息;–exclude='yolo.tar’选项表示排除掉名为yolo.tar的文件;.表示当前目录,username表示远程主机的用户名,remote_host表示远程主机的IP地址或者主机名,/path/to/destination/表示目标路径

5.使用端口3022复制当前目录所有文件到远程地址,排除yolo.tar文件,

rsync -avz -e 'ssh -p 3022' --exclude='yolo.tar' . root@remote_host:/path/to/destination/

在这个命令中,-e ‘ssh -p 3022’ 选项告诉 rsync 使用 ssh 作为远程 shell,并使用 -p 3022 参数指定端口。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值