在日常工作和学习中,我们经常会遇到两台Linux主机间文件传输的问题。平时表哥都是通过Scp命令进行传输。今天为大家介绍一款同类型更好玩的工具。
rsync是一种强大的命令行工具,用于在本地或远程计算机之间进行文件同步。它可以将文件从一个位置复制到另一个位置,同时节约带宽和存储空间。并且在Linux中它是默认安装的,无需再次安装。
参数 | 说明 |
|---|---|
-a | 表示以递归方式传输文件,并保持所有文件属性不变 |
-r | 递归复制目录及其中的文件 |
-u | 仅更新目标文件,不覆盖已存在且新于源文件的文件 |
-z | 传输时压缩数据,减少网络带宽占用 |
--delete | 删除目标上没有源文件对应的文件 |
--progress | 显示传输时的实时进度 |
🎉常规操作
将本地100G学习资源同步到远程主机的目录home目录下。
rsync -avz 100G学习资源.gz root@192.168.123.173:/home

⚽️同步文件
将本地的home目录同步到远程主机
rsync -avz /home root@192.168.123.173:/home

🎨文件过滤
如,我们在同步数据时,不想将本地的图片进行同步,我们可以利用--exclude 命令进行过滤。当然反过来用--include。
rsync -avz --exclude='*.jpg' /home root@192.168.123.173:/home
当然,还有更多的场景,应结合自身的实际情况来考虑。本文也就不在多说了。