У меня есть миллионы изображений на моем облачном сервере Ubuntu. Когда я перемещаю всю папку, содержащую 12 миллионов изображений, используя mv
команду, это происходит почти мгновенно. Однако, когда я mv
только изображения (не папки), это занимает некоторое время. Есть ли способ перемещать все изображения так же быстро, как папки?
Вот что происходит:
В папке src 12 миллионов изображений, и я перемещаю это в папку dst, используя
$ mv src ../dst
Происходит сразу
Внутри папки src я делаю это для перемещения:
find -maxdepth 1 -name '*.jpg' -exec mv -t ../../dst/ {} +
Это займет некоторое время.
Есть ли способ ускорить второй процесс?
dst
находится в разделе, тогда как ../../dst
находится на другом.
{}
аргумента, где имя файла (ов) будет расширен.
find
. find ... -exec mv -t ../../dst/ {} \;
будет вызывать mv
один раз за файл; find ... -exec mv -t ../../dest {} +
было бы намного быстрее, копируя столько файлов за вызов, сколько возможно, но все же не так быстро, как перемещение самой директории, как объясняет dadexix86 .