Featured image of post Ubuntu 复制显示进度

Ubuntu 复制显示进度

cp 和 rsync 区别

cp 命令不支持显示进度,改用 rsync

功能定位

  • cp‌:基础文件复制工具,仅将文件或目录完整复制到目标位置,无论源文件是否已存在于目标位置‌。
  • rsync‌:增量同步工具,通过比较源和目标文件的差异,仅传输修改或新增的部分,适用于频繁更新或大文件场景‌。

传输效率

  • cp‌:每次执行均完整复制所有文件,资源消耗较高,尤其对大目录或重复复制场景效率低‌。
  • rsync‌:仅传输变化部分,节省带宽和时间,支持断点续传(-P参数),适合网络传输或备份任务‌。

使用场景

cp‌:适合单次本地快速复制小文件或简单目录,无需复杂配置‌。

rsync‌:

  • 本地或远程增量同步(如 user@host:/path 格式)‌;
  • 定期备份、镜像服务器、大文件传输等需高效处理的场景‌。

附加功能

  • cp -a 可保留权限、时间戳等属性‌;
  • rsync -a 默认保留属性,且支持更多元数据(如符号链接、设备文件)‌。

远程支持

  • cp‌:仅限本地操作,远程复制需依赖 scp 或 rsync‌。
  • rsync‌:原生支持远程路径,可通过 SSH 加密传输(如 -e ssh)‌。

复制命令

rsync 复制目录并显示进度

1
rsync -avhP /mnt/usb01/content/ /mnt/hd01/wallpaper/content/
  • -a:归档模式,保留文件权限、时间戳等属性,并递归复制子目录(包含 -r 功能)
  • -v:显示详细传输过程‌。‌
  • -h:以人类可读格式(如 KB、MB)显示文件大小‌。
  • -P:等价于 --partial --progress,显示每个文件的传输进度(百分比、速度、剩余时间),并支持断点续传‌。

cp 命令复制目录

1
cp -r /mnt/usb01/content/ /mnt/hd01/wallpaper
Licensed under CC BY-NC-SA 4.0
最后更新于 2025-03-30 16:10 UTC