Чи є спосіб показати швидкість копіювання файлів на Mac?


24

Чи є спосіб показати швидкість копіювання файлів на Mac? Наприклад, при копіюванні файлу з жорсткого диска на карту SDHC і навпаки.

Причина в тому, що я можу перевірити максимальну швидкість карти SDHC на своєму ПК Dell, але здається, що там інтерфейс карт обмежений 20 Мб / с читанням або записом. Тому я хочу перевірити, як це на 27 дюйма iMac. Можливо, можна використати якусь тестову програму, але я все ж люблю з'ясувати будь-який простий спосіб сказати швидкість копіювання файлів на Mac.

Відповіді:


33

Якщо вам зручно в Терміналі, ви можете використовувати rsync для копіювання деяких файлів з одного місця в інше, і це дасть вам підсумкову статистику швидкості:

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

Напр. Rsync --стати - читатими по-людськи ~ / настільний / великий файл / томи / іншеDisk / 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

чи буде файл скопійований у "кеш жорсткого диска" і вважати виконаним копіювання? (поки дані фізично не скопійовані на жорсткий диск. Наприклад, якщо копіюється файл 500 Мб з внутрішнього жорсткого диска на USB-накопичувач, дані можуть бути "прочитані" в кеш-пам'ять оперативної пам'яті ОС і записані на USB-накопичувач, і поки він ще пише, про файл вже повідомляється як про "завершене копіювання", тому швидкість копіювання зазначена неточно високою.)
nopole

@ 太極 者 無極 而 生 Ні. Файли не копіюються в кеш. Кеш лише робить копію швидшою, якщо 1. швидкість лінії значно вище швидкості дискового диска і 2. розмір передачі повністю вписується у виділений кеш. Кеш використовується таким чином, що максимальна швидкість лінії може бути підтримана, оскільки це швидше, ніж будь-який привід або лінія передачі. Але ОС постійно записує цей кеш на диск. Але це правда, що коли нічого не залишається для передачі, і поки кеш все ще заповнений, ОС повідомляє про передачу як закінчену. Ось чому вам потрібно синхронізувати або відключити / вийняти і зачекати, поки буфер спорожняється. HTH.
Пол-Себастьян Маноле

man rsyncв Терміналі і шукайте кеш. Схоже, версія rsync для OS X відключає кешування ОС.
JBRWilkinson

@JBRWilkinson ОС може зробити кешування прозорим, але я думаю, що в цьому випадку він rsyncробить системний виклик UNIX і використовує опцію "НЕ ВИКОРИСТОВУЙТЕ КЕШ", тому це чисте копіювання на пристрій і нічого немає в кеш-пам'яті оперативної пам'яті
nopole

13

Найпростіший метод - це просто скористатися загальними вимірюваннями швидкості введення-виведення, які підтримує система.

Якщо вам подобається в командному рядку, diskutil listпоказує те , що диски на карті , в якій disk0, disk1і т.д ... і iostat 1скине швидкість передачі кожну секунду. Вам потрібно буде натиснути Control-C, щоб закрити цю програму після завершення. Крім того, якщо ви хочете більш тривалого вимірювання, просто змініть на 1скільки- небудь секунд, щоб ви хотіли середні швидкості введення-виведення.

Якщо вам подобаються графіки, "Монітор активності" агрегує IO з усіх дисків. Виберіть вкладку "Активність диска", там відображається живий графік або вводу-виводу в секунду, або пропускної здатності (даних) в секунду протягом часу для всіх накопичувачів разом.

введіть тут опис зображення

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.