Для этого полезна команда "rsync". Я делаю что-то вроде этого:
rsync -PHACcviuma --copy-unsafe-links --exclude="*~" folder2/ folder1/ && rm -fr folder2
Все флаги задокументированы на справочной странице rsync; в основном rsync не заменяет более новые файлы более старыми и не копирует файлы, которые дублируются в месте назначения. В противном случае он будет копировать вещи с исходными метаданными (, временной меткой, разрешениями и т. д. ).
Программа rsync также будет включать «скрытые файлы» (имена, начинающиеся с «.» ), резервные копии (, оканчивающиеся на «~», и т. д. ), поэтому я использую параметр исключения --, чтобы пропустить определенные неинтересные шаблоны файлов.
Я считаю, что проект можно назвать завершенным, но отчеты об ошибках и идеи/обновления функций исключены на githubhttps://github.com/tarot231/leafpad