Почему mv работает так медленно, переименовывая файлы на моей SD-карте?
SD-карта находится в телефоне, который привязан к компьютеру.
% pwd
/run/user/1000/gvfs/mtp:host=%5Busb%3A003%2C007%5D/SanDisk SD card
% date && mv f759fdradio_ga_ga.mp3 radio_ga_ga.mp3 && date
Thu Sep 15 23:29:05 EDT 2016
Thu Sep 15 23:29:31 EDT 2016
Использование 'rename' для переименования файлов в массовом порядке работает так же медленно, как и mv.
Использование PCManFM для переименования файлов по отдельности и вручную работает очень быстро (хотя и утомительно).
Почему Mv такой медленный? И что еще более важно, есть ли способ использовать функцию переименования PCManFM из оболочки?
1 ответ
Как вы видите, когда вы перемещаете его, он монтируется поверх gvfs, которая является виртуальной файловой системой gnome, которую pcmanfm, pcmanfm-qt используют вместе со многими другими файловыми менеджерами и уже установили ее. Вы можете попробовать команду gvfs-rename, чтобы переименовать все файлы на телефоне. Кроме того, если он все еще медленный, вы можете заполнить свой кэш записи вещей, которые можно изменить в телефоне, как если бы вы все еще могли писать в кэш, но как только он заполнится, он замедлится, если вам потребуется дополнительная информация об этом, см. https://en.wikipedia.org/wiki/Cache_(computing). К сожалению, если кеширование делает первый шаг быстрым, а все остальное - медленным. Чтобы выяснить, является ли это проблемой, я бы попробовал использовать mv для одного файла и достаточно ли быстро для каждого файла. Кроме того, SD-карты в телефонах не самый быстрый носитель, и вам нужно записать изменения в SD-карту для каждого файла. Я помню, что при длительной передаче файлов pcmanfm имел индикатор выполнения: он не перемещается для каждого файла или вы переименовываете столько файлов, что это может занять так много времени.