В каком порядке копируются файлы и каталоги при использовании Linux cp -R?

12

Если я выполню следующую команду:

cp -R /myfiles /mydestination

Если myfilesсодержит несколько подкаталогов и файлов, в каком порядке они будут скопированы?

Например, каталоги могут быть названы 0123a, 9993c, myfolder, xfolder.

lsНасколько я могу судить, они не копируются в алфавитном порядке ИЛИ в порядке дат ИЛИ в том порядке, в котором они появляются при использовании стандартной команды, так что же определяет порядок?

Изменить: я пытаюсь определить порядок, который команда cp использует, чтобы определить, как далеко моя команда копирования сделала это, прежде чем она остановилась. Например, я надеялся, что смогу определить, успешно ли скопированы 3 из 4 каталогов.

Скотт Шреттер
источник
Помните, что lsкоманда по умолчанию сортирует содержимое каталога перед его отображением. То, что вы видите напечатанным, lsне является действительным порядком перечисления каталога.
JdeBP
1
Используйте, ls -Uчтобы получить несортированный порядок каталогов. Это должен быть порядок, который cpиспользует. Если вам нужно больше контролировать прогресс, порядок и т. Д., Возможно, cpэто не инструмент для работы.
Даниэль Андерссон

Ответы:

2

Порядок, в котором они хранятся / возвращаются в файловой системе. Для «несортированных» файловых систем это обычно будет порядок их создания. Для «отсортированных» файловых систем (например, ext3 / 4 с dir_index) это будет порядок, используемый в индексе файловой системы.

Игнасио Васкес-Абрамс
источник
Для неиндексированных форматов файловой системы это немного сложнее, чем если бы вы удаляли записи каталога, а также создавали их. (-:
JdeBP
12

У нас была точно такая же проблема. Мы копируем большие объемы данных на USB-накопители и с них, и это раздражает, когда мы не можем сказать, как далеко прошел этот процесс. Вместо этого мы начали использовать RSYNC.

Вместо того, чтобы использовать cp -Rv /source /destination

Используйте это вместо rsync -av /source /destination

Теперь все ваши папки и их содержимое будут обрабатываться в алфавитном порядке, и вы сможете легко увидеть, как идет процесс копирования файла.

У нас есть полное описание этого решения на нашем сайте резервного копирования онлайн .

Модераторы, обратите внимание: я опубликовал это однажды, но оно было удалено, возможно, из-за того, что я не включил достаточно подробностей в ответ, или из-за ссылки. Может быть, вы примете этот более подробный ответ.

Михаил Климчак
источник