有没有办法显示在Mac上复制文件的速度?


24

有没有办法显示在Mac上复制文件的速度?例如,将文件从硬盘驱动器复制到SDHC卡时,反之亦然。

原因是我可以在Dell PC上查看SDHC卡的最大速度,但是似乎在那里,该卡的接口被限制为20MB / s的读写速度。因此,我想检查一下iMac 27英寸的情况。也许可以使用一些测试程序,但是我仍然喜欢找出任何简单的方法来判断在Mac上复制文件的速度。

Answers:


33

如果您对终端感到满意,则可以使用rsync将一些文件从一个位置复制到另一个位置,它会为您提供速度的摘要统计信息:

rsync -a --progress --stats --human-readable path_to_source path_to_dest

例如rsync --stats-人类可读〜/ Desktop / Large-File / Volumes / OtherDisk / Dir

您还可以仅在命令中输入以下命令:

rsync -a --progress --stats --human-readable 

请注意--human-readable在提供该源文件和目标文件名之前,该命令结束后必须有一个或多个空格,然后中断)

然后将您想要复制的文件/文件夹拖放到终端窗口,然后拖放目标目录。将文件/文件夹拖放到终端窗口中会将文件/文件夹的路径放入终端窗口。在大多数情况下,最好拖动文件,因为它将处理任何文件夹或文件名中的空格。在这种情况下,空格需要一个\来指示不要以与之前需要空格完全相反的方式结束文件名。

上面命令的输出将类似于:

[jnet@Kyle ~]$ rsync -a --progress --stats --human-readable /Users/jnet/Pictures/Screen\ Caps /Volumes/Scratch 
building file list ... 
644 files to consider
Screen Caps/
Screen Caps/.DS_Store
      21.51K 100%    0.00kB/s    0:00:00 (xfer#1, to-check=642/644)
Screen Caps/Can someone downvote me please.pdf
      78.19K 100%    8.29MB/s    0:00:00 (xfer#2, to-check=641/644)
Screen Caps/Can someone downvote me please.png
     399.61K 100%   14.66MB/s    0:00:00 (xfer#3, to-check=640/644)
Screen Caps/ChefVMMemtest.png
       8.29K 100%  207.68kB/s    0:00:00 (xfer#4, to-check=639/644)
[...]
Number of files: 644
Number of files transferred: 638
Total file size: 176.85M bytes
Total transferred file size: 176.85M bytes
Literal data: 176.85M bytes
Matched data: 0 bytes
File list size: 12574
File list generation time: 0.002 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 176.92M
Total bytes received: 14.09K

sent 176.92M bytes  received 14.09K bytes  14.15M bytes/sec
total size is 176.85M  speedup is 1.00

将文件复制到“硬盘缓存”并考虑完成复制吗?(虽然数据并未物理复制到硬盘驱动器。例如,如果将500MB文件从内部硬盘复制到USB驱动器,则数据可能会被“读取”到操作系统的RAM缓存中,并被写入USB驱动器,并且仍在写入时,该文件已被报告为“完成复制”,因此复制速度被说
得不

@太极者无极而生否。文件不会复制到缓存中。高速缓存仅在以下情况下使复制显得更快:1.线速度远高于磁盘驱动器速度,并且2.传输大小完全适合分配的高速缓存。使用高速缓存可以保持最大线速度,因为它比任何驱动器或传输线都要快。但是,操作系统始终将高速缓存写入磁盘。但是的确,当没有剩余要传输的内容并且缓存仍然满时,操作系统会报告传输已完成。这就是为什么您需要同步或卸载/弹出并等待清空缓冲区的原因。HTH。
Paul-Sebastian Manole

man rsync在终端中,查找“缓存”。看起来OS X版本的rsync退出了OS缓存。
JBR威尔金森

@JBRWilkinson操作系统可以使缓存透明化,但是我认为在这种情况下,它rsync正在进行UNIX系统调用并使用“请勿使用缓存”选项,因此它是纯复制到设备的,RAM缓存中没有任何内容
nopole

13

最简单的方法是仅利用系统维护的总体IO速度测量值。

如果你喜欢命令行,diskutil list显示你有什么驱动器映射到这disk0disk1等...而iostat 1将转储传输速度每秒。完成后,您将需要按Control-C退出此程序。另外,如果您想要更长的测量时间,只需1将IO 更改为多少秒即可平均IO速度。

如果您喜欢图形,则“活动监视器”将聚合所有磁盘的IO。选择“磁盘活动”选项卡,其中实时显示了所有组合驱动器随时间变化的每秒IO或每秒吞吐量(数据)的图表。

在此处输入图片说明

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.